Schedules
Check what blocks publishing
GET
Scope: channels:read
apiKeyheader
AuthorizationBearer <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.
id*stringOK
application/json- response
[key: string]?anyExample Request
curl -X GET 'https://dev.app.ingenee.ai/api/v1/channels/string/publish-gate'Example Response
{ "blockers": [], "warnings": [ "96 airing(s) repeat a title inside the 72h window.", "1359 min of junction time left \"Unallocated\" (first 7 days checked) — this channel's own IDs, promos and loop clip cannot fill it. Add spots on the Promo lib…" ], "passing": [ "Watershed clean — no mature content before 20:00 local · prime-time start (no watershed set)", "Full runtimes — no airing is shorter than its content, none overlap" ], "destinations": [ { "name": "E2E Ad Channel India · XMLTV EPG", "path": "cdn.ingenee.ai/epg/e2e-ad-channel-india.xml", "ready": true }, { "name": "E2E Ad Channel India · schedule JSON", "path": "cdn.ingenee.ai/channels/e2e-ad-channel-india.json", "ready": true } ], "counts": { "blockers": 0, "warnings": 5, "passing": 8 }, "canPublish": true, "version": { "versionNum": 181, "itemCount": 102, "coveredDays": 8 }, "health": { "familiarity": 94, "freshness": 6, "channelId": 100, "slots": 102, "distinctTitles": 6, "heavyRotation": [ { "title": "Toy Story", "airings": 17 }, { "title": "Coco", "airings": 17 } ], "drift": [ "Overplay: \"Toy Story\" is 17 of 102 airings (17%)", "Low freshness: only 6 distinct titles across 102 slots" ] }}