Storefronts

Run the publish gate without publishing

GET
/v1/storefronts/{id}/validate

Scope: vod:read

Authorization

apiKey
headerAuthorizationBearer <ik_live_…>

An organisation API key from Settings → Organisation → API keys. Each operation names the one scope it needs — see https://developer.ingenee.ai/docs/authentication.

Path Parameters

id*string

Response Body

OK

application/json
  1. response
[key: string]?any
Example Request
curl -X GET 'https://dev.app.ingenee.ai/api/v1/storefronts/string/validate'
Example Response
{  "blockers": [    {      "check": "“E2E New & Notable” shelf is incomplete",      "detail": "Only 3 of the minimum 7 tiles — needs 4 more before publish",      "fix": [        {          "label": "Auto-fill (AI)",          "action": "autofill",          "shelfId": "4d141529-c9eb-43ba-a564-b36e117adf61"        },        {          "label": "Open shelf",          "href": "/storefronts/5dc406e3-945a-4477-8ded-dc9a19372f59/shelves/4d141529-c9eb-43ba-a564-b36e117adf61"        }      ]    },    {      "check": "“E2E Build Probe” shelf is incomplete",      "detail": "Only 3 of the minimum 7 tiles — needs 4 more before publish",      "fix": [        {          "label": "Auto-fill (AI)",          "action": "autofill",          "shelfId": "98a73692-6813-4ad8-b159-39280ce21da1"        },        {          "label": "Open shelf",          "href": "/storefronts/5dc406e3-945a-4477-8ded-dc9a19372f59/shelves/98a73692-6813-4ad8-b159-39280ce21da1"        }      ]    }  ],  "warnings": [    {      "check": "4 title(s) with rights expiring within 30 days",      "detail": "A fallback tile will surface if a licence lapses.",      "fix": [        {          "label": "Extend rights",          "href": "/rights/expiring"        },        {          "label": "Substitute (AI)",          "action": "substitute",          "shelfId": "da91fa9b-c2ff-4187-a013-72ed6b68b431",          "risk": "expiring_soon"        }      ]    },    {      "check": "8 title(s) with unknown rights",      "detail": "No rights window recorded — add availability windows.",      "fix": [        {          "label": "Add availability window",          "href": "/rights"        },        {          "label": "Skip · publish anyway",          "action": "skip"        }      ]    }  ],  "passing": [    "Page has 3 shelves",    "Sponsored shelves carry disclosure"  ],  "counts": {    "blockers": 3,    "warnings": 2,    "passing": 7  },  "diff": {    "added": 16,    "removed": 0,    "moved": 0  },  "diffShelves": [    {      "shelf": "E2E Staff Picks",      "added": 10,      "removed": 0,      "moved": 0,      "notable": "+ The Matrix, Inception, Arrival"    },    {      "shelf": "E2E New & Notable",      "added": 3,      "removed": 0,      "moved": 0,      "notable": "+ Everything Everywhere All at Once, Hunt for the Wilderpeople, Moonlight"    }  ],  "endpoints": [    {      "path": "e2e-home.json",      "ttl": "5m",      "lastRefresh": null,      "action": "Invalidate on publish"    },    {      "path": "e2e-home.jsonld",      "ttl": "1h",      "lastRefresh": null,      "action": "Schema.org ItemList"    }  ],  "scope": {    "kind": "page",    "shelfName": null,    "pageName": "E2E Home",    "shelfCount": 3,    "tileCount": 16,    "endpointUrl": "cdn.ingenee.ai/storefronts/e2e-home.json"  },  "seasonalShelves": [],  "localizationReadiness": null,  "canPublish": false}