---
title: "Check whether a site is ready for the App Store and Google Play"
method: GET
path: "/sites/{id}/store-readiness"
tags: ["Sites"]
---

# Check whether a site is ready for the App Store and Google Play

`GET /sites/{id}/store-readiness`

## Request

- Base URL: `https://api.hypamoon.com/api/v1`
- URL: `https://api.hypamoon.com/api/v1/sites/{id}/store-readiness`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://app.hypamoon.com/oauth/authorize`, token URL `https://api.hypamoon.com/oauth/token`, scopes: `sites:read`)

Checks a site against what Apple (guideline 4.2: more than a website in a shell; 2.1: complete; 3.1.1: digital goods through in-app purchase) and Google Play expect: native value, a privacy policy URL, a support contact, an icon of the right size, complete content without placeholder pages, no external payment pages for digital goods, and no tracking without permission. Returns ready or not ready for each store, with concrete next steps, and what the user must arrange with Apple and Google themselves (their own developer account, a D-U-N-S number for a company, the 14-day closed test for a new personal Play account). Read-only; changes nothing.

## Path parameters

- `id` string, uuid, required

## Response `200`

The verdict per store, every check and the next steps.

- object
  - `site` object, required
    - `id` string, required
    - `name` string, required
    - `app_url` string, required
    - `test` boolean, required
  - `stores` object, required
    - `apple` object, required
      - `ready` boolean, required: True when nothing blocks this store. The developer accounts are listed separately.
      - `blocking` string[], required: Ids of failed checks.
      - `warnings` string[], required: Ids of checks with a warning.
      - `next_steps` string[], required
    - `google_play` object, required
      - `ready` boolean, required: True when nothing blocks this store. The developer accounts are listed separately.
      - `blocking` string[], required: Ids of failed checks.
      - `warnings` string[], required: Ids of checks with a warning.
      - `next_steps` string[], required
  - `checks` object[], required
    - `id` string, required
    - `title` string, required
    - `status` 'pass' | 'warn' | 'fail', required
    - `stores` string[], required
    - `detail` string, required
    - `fix` string
  - `native_value` object, required
    - `present` string[], required
    - `can_add` string[], required
    - `summary` string, required
  - `accounts` object, required
    - `apple` object, required
      - `steps` string[], required
      - `fee` string
      - `enroll_url` string
    - `google_play` object, required
      - `steps` string[], required
      - `fee` string
      - `enroll_url` string
  - `unknown` string[], required: Parts of the project that could not be read; treat them carefully.
  - `next_steps` string[], required

## Other responses

- `401`: Unauthorized: unauthorized, missing_api_key, invalid_api_key, api_key_revoked, project_deleted.
- `403`: Forbidden: project_not_enabled, key_mode_mismatch, missing_scope, verification_required.
- `404`: Not Found: not_found.
- `429`: Too Many Requests: rate_limited.
- `500`: Internal Server Error: internal_error.
- `503`: Service Unavailable: service_unavailable.

---

[API](https://skmtc.dev/hypamoon/apis/hypamoon-api.md) · [All operations](https://skmtc.dev/hypamoon/apis/hypamoon-api/llms.txt) · [OpenAPI document](https://skmtc.dev/hypamoon/apis/hypamoon-api/revisions/9f0b90004c06?raw)
