Skip to main content

API Reference

Metadata API

API reference for reading and updating App Store and Google Play metadata.

Metadata API#

Get Metadata#

GET /v1/projects/:id/metadataRequires authentication

Returns the current App Store or Google Play metadata for a project.

Path Parameters#

| Name | Type | Required | Description | |------|------|----------|-------------| | id | string | Yes | The project ID. |

Query Parameters#

| Name | Type | Required | Description | |------|------|----------|-------------| | locale | string | No | Locale to retrieve metadata for. e.g., 'en-US', 'ja', 'de'. Defaults to the project's primary locale. |

Response#

json
{
  "name": "Versed - Language Learning",
  "subtitle": "Master any language with AI",
  "description": "Versed uses spaced repetition and AI-powered flashcards to help you learn any language. Track your progress, compete with friends, and master vocabulary faster than ever.\n\nFeatures:\n- AI-generated flashcards\n- Spaced repetition algorithm\n- 40+ languages\n- Offline mode",
  "keywords": "language,learning,flashcards,AI,vocabulary,spaced repetition",
  "promotionalText": "New: Japanese course available!",
  "whatsNew": "Bug fixes and performance improvements.",
  "category": "Education",
  "locale": "en-US"
}

Example#

bash
curl -H "Authorization: Bearer sk_stora_..." \
  "https://stora.sh/api/v1/projects/proj_abc123/metadata?locale=en-US"

Tip: Use the locale parameter to manage metadata across multiple languages. Stora supports all locales accepted by the App Store and Google Play.


Update Metadata#

PUT /v1/projects/:id/metadataRequires authentication

Update one or more metadata fields for a project. Only the fields you include in the request body will be changed.

Path Parameters#

| Name | Type | Required | Description | |------|------|----------|-------------| | id | string | Yes | The project ID. |

Request Body#

| Name | Type | Required | Description | |------|------|----------|-------------| | fields | object | Yes | An object containing the metadata fields to update. Valid keys: name, subtitle, description, keywords, promotionalText, whatsNew. | | locale | string | No | Locale to update metadata for. Defaults to the project's primary locale. |

Response#

Returns the full updated metadata object (same shape as the GET response).

Example#

bash
curl -X PUT \
  -H "Authorization: Bearer sk_stora_..." \
  -H "Content-Type: application/json" \
  -d '{
    "fields": {
      "subtitle": "Learn languages with AI flashcards",
      "keywords": "language,learning,flashcards,AI,vocabulary,tutor"
    },
    "locale": "en-US"
  }' \
  https://stora.sh/api/v1/projects/proj_abc123/metadata

Field Limits#

| Field | App Store Limit | Google Play Limit | |---|---|---| | name | 30 characters | 30 characters | | subtitle | 30 characters | 80 characters (short description) | | description | 4,000 characters | 4,000 characters | | keywords | 100 characters | N/A (Google uses description) | | promotionalText | 170 characters | N/A | | whatsNew | 4,000 characters | 500 characters |

Warning: Stora will validate field lengths before saving. If a field exceeds the limit for the target store, the request will return a 400 error with details about which field was too long.