Skip to main content
POST /v1/aso/metadata/validate
Validate your app store metadata against Apple App Store or Google Play Store character limits before submitting. Checks each field for length compliance, detects keyword stuffing, and identifies duplicate keywords.

Request Body

FieldTypeRequiredDescription
platformstringYes"apple" or "google"
titlestringNoApp title to validate
subtitlestringNoApple subtitle (Apple only)
keywordsstringNoApple keyword field, comma-separated (Apple only)
shortDescriptionstringNoGoogle short description (Google only)
fullDescriptionstringNoGoogle full description (Google only)
Include only the fields relevant to your platform. For Apple, send title, subtitle, and/or keywords. For Google, send title, shortDescription, and/or fullDescription.

Character Limits

PlatformFieldMax Characters
Appletitle30
Applesubtitle30
Applekeywords100
Googletitle50
GoogleshortDescription80
GooglefullDescription4,000

Code Examples

curl -X POST "https://api.appeeky.com/v1/aso/metadata/validate" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "platform": "apple",
    "title": "FitFlow: Fitness Tracker",
    "subtitle": "Easy Workout Planner & Log",
    "keywords": "activity,goals,routine,challenge,calories,home,progress,simple,exercise,fitness,beginner"
  }'

Response

{
  "data": {
    "platform": "apple",
    "fields": [
      {
        "field": "title",
        "value": "FitFlow: Fitness Tracker",
        "charCount": 24,
        "maxChars": 30,
        "isValid": true,
        "message": "24/30 characters (6 remaining)"
      },
      {
        "field": "subtitle",
        "value": "Easy Workout Planner & Log",
        "charCount": 26,
        "maxChars": 30,
        "isValid": true,
        "message": "26/30 characters (4 remaining)"
      },
      {
        "field": "keywords",
        "value": "activity,goals,routine,challenge,calories,home,progress,simple,exercise,fitness,beginner",
        "charCount": 89,
        "maxChars": 100,
        "isValid": true,
        "message": "89/100 characters (11 remaining)"
      }
    ],
    "allValid": true,
    "keywordStuffingDetected": false,
    "duplicateKeywords": []
  }
}

Example: Invalid Metadata

{
  "data": {
    "platform": "apple",
    "fields": [
      {
        "field": "title",
        "value": "FitFlow: The Best Fitness Tracker App For Everyone",
        "charCount": 50,
        "maxChars": 30,
        "isValid": false,
        "message": "50/30 characters (20 over limit!)"
      }
    ],
    "allValid": false,
    "keywordStuffingDetected": true,
    "duplicateKeywords": []
  }
}

Response Fields

FieldTypeDescription
platformstring"apple" or "google"
fieldsarrayValidation result for each submitted field
allValidbooleantrue if all fields pass character limits
keywordStuffingDetectedbooleantrue if excessive keyword repetition is detected
duplicateKeywordsstring[]List of keywords that appear more than once in the keyword field

Field Entry

FieldTypeDescription
fieldstringField name (e.g. "title", "keywords")
valuestringThe submitted value
charCountnumberActual character count
maxCharsnumberMaximum allowed characters
isValidbooleantrue if within character limit
messagestringHuman-readable status with remaining/over count

Apple keyword field tips:
  • Use commas without spaces between keywords (saves characters)
  • Don’t repeat words already in your title or subtitle
  • Don’t include your app name or brand
  • Singular vs plural: Apple matches both, so pick the shorter form
  • Use all 100 characters — every unused character is a wasted opportunity
Keyword stuffing will get your app rejected or penalized. Apple and Google both have guidelines against unnatural keyword repetition. The keywordStuffingDetected flag warns you when a word appears too frequently (> 5% density in descriptions).

Errors

StatusCodeWhen
400INVALID_PLATFORMplatform is not “apple” or “google”
401MISSING_API_KEYNo API key in the request