{"docsConfig":{"theme":"almond","$schema":"https://mintlify.com/docs.json","name":"PunchPlay","colors":{"primary":"#4ca2ff","light":"#4ca2ff","dark":"#2d8eff"},"logo":{"light":"https://mintcdn.com/punchplay/IKkrwHZRg_AjfVgz/brand/punchplay-logo-light.svg?fit=max\u0026auto=format\u0026n=IKkrwHZRg_AjfVgz\u0026q=85\u0026s=c3da49be29551dd33f277ebb2b1cc3d5","dark":"https://mintcdn.com/punchplay/IKkrwHZRg_AjfVgz/brand/punchplay-logo-dark.svg?fit=max\u0026auto=format\u0026n=IKkrwHZRg_AjfVgz\u0026q=85\u0026s=d13bf475ad091cb4e302cf5ac1beb8ae","href":"https://punchplay.tv"},"favicon":"https://mintcdn.com/punchplay/iobLz_s2FL9pVUWG/brand/punchplay-mark.svg?fit=max\u0026auto=format\u0026n=iobLz_s2FL9pVUWG\u0026q=85\u0026s=851613e5f72deca273c27d9a465f26c4","api":{"openapi":"openapi.yaml","url":"full"},"appearance":{"default":"dark"},"background":{"decoration":"gradient","color":{"dark":"#030712"}},"navbar":{"links":[{"href":"https://punchplay.tv","label":"PunchPlay.tv"},{"href":"https://discord.gg/pPwct597Ut","label":"Discord"}],"primary":{"type":"button","label":"Get API key","href":"https://punchplay.tv/developers"}},"fonts":{"family":"Sora"},"icons":{"library":"lucide"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"punchplay","hasAudioNarration":false,"actualSubdomain":"punchplay","customDomains":["docs.punchplay.tv"],"gitSource":{"type":"github","owner":"punchplay","repo":"punchplay-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"collectionId":"6c6944af-bf74-4163-b426-a6a935686310","liveDeploymentHistoryId":"6acf4dceb45cd9648b9cb270","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6acf4dceb45cd9648b9cb270"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6acf4dceb45cd9648b9cb270","clientVersion":"0.0.3990","searchFilterCounts":[{"language":"default","tag":"Reference","count":63},{"language":"default","tag":"Guides","count":9},{"language":"default","tag":"Lists","count":8},{"language":"default","tag":"History","count":7},{"language":"default","tag":"Playback","count":7},{"language":"default","tag":"Authentication","count":6},{"language":"default","tag":"Notifications","count":5},{"language":"default","tag":"Profile","count":5},{"language":"default","tag":"Sync","count":5},{"language":"default","tag":"Ratings","count":4}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":true},"customCss":[{"filePath":"custom.css","content":"#topbar-cta-button a,li.navbar-link{border-radius:9999px!important}a[href=\"/\"] img,header img,img[alt=\"PunchPlay logo\"],img[alt=PunchPlay]{height:44px!important;width:auto!important;max-height:44px!important}"}],"page":{"pagePath":"api-reference/sync/idempotently-insert-up-to-100-history-items","slug":"/api-reference/sync/idempotently-insert-up-to-100-history-items","pageMetadata":{"title":"Idempotently insert up to 100 history items","description":null,"deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/sync/history","href":"/api-reference/sync/idempotently-insert-up-to-100-history-items","autogeneratedByOpenApi":true},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Idempotently insert up to 100 history items","description":null,"deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/sync/history","href":"/api-reference/sync/idempotently-insert-up-to-100-history-items","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"bulkSyncHistory","summary":"Idempotently insert up to 100 history items","tags":["Sync"],"x-required-scope":"history:write","security":["896c9bd7-0f56-496c-bb94-ab880caaeea3"],"parameters":["7d4a12d6-ab87-4a0d-bc71-c3a2a8905047"],"requestBody":"c848b35e-b0c6-4f3c-b5ca-506494a94812","responses":{"200":"70db49c7-5c79-45a1-91a6-bfbcb6d8ace4","400":"4054b7db-f694-4d10-a246-45157975da8c","401":"929d7018-9965-49d9-b06f-11fb5416c578","403":"b76956db-730b-4fdb-87ba-2edd80c17305","408":"ac5c0420-3700-4e9e-b794-5dd61da5357d","409":"22918cc7-2484-4516-a5f7-7eec6f5acaeb","413":"0b4e78a2-af94-47d8-89e7-bf8279788b6e","429":"d427e1ec-edaf-4f00-b44e-069b43e1aea8"},"method":"post","type":"path","servers":["a7698a87-c1b4-46e8-9983-1d7e34dcdb3c","dd47bf98-d7b5-4de3-bce5-dd56762da867"],"path":"/api/platform/v1/sync/history","baseUrlOptions":["https://punchplay.tv","http://localhost:3000"],"title":"Idempotently insert up to 100 history items","description":"","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated","urlDisplay":"full"},"dependencies":{"parameters":{"7d4a12d6-ab87-4a0d-bc71-c3a2a8905047":{"in":"header","name":"Idempotency-Key","required":true,"schema":{"type":"string","minLength":8,"maxLength":200,"isRequired":true,"uniqueKey":"","typeLabel":"string"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["items"],"properties":{"items":{"type":"array","minItems":1,"maxItems":100,"items":{"oneOf":[{"type":"object","required":["client_item_id","kind","watched_at","tmdb_id"],"properties":{"client_item_id":{"type":"string","minLength":1,"maxLength":200,"isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.0.client_item_id","typeLabel":"string"},"kind":{"type":"string","enum":["movie","episode"],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.0.kind","typeLabel":"enum\u003cstring>"},"tmdb_id":{"type":"integer","minimum":1,"isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.0.tmdb_id","typeLabel":"integer"},"watched_at":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.0.watched_at","typeLabel":"string\u003cdate-time>"},"imdb_id":{"type":"string","pattern":"^tt\\d+$","uniqueKey":"\\items.items.[INDEX].oneOf.0.imdb_id","typeLabel":"string"},"tvdb_id":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.0.tvdb_id","typeLabel":"integer"},"mal_id":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.0.mal_id","typeLabel":"integer"},"title":{"type":"string","minLength":1,"maxLength":500,"uniqueKey":"\\items.items.[INDEX].oneOf.0.title","typeLabel":"string"},"year":{"type":"integer","minimum":1888,"maximum":2100,"uniqueKey":"\\items.items.[INDEX].oneOf.0.year","typeLabel":"integer"},"season":{"type":"integer","minimum":0,"uniqueKey":"\\items.items.[INDEX].oneOf.0.season","typeLabel":"integer"},"episode":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.0.episode","typeLabel":"integer"},"episode_title":{"type":"string","maxLength":500,"uniqueKey":"\\items.items.[INDEX].oneOf.0.episode_title","typeLabel":"string"},"poster_path":{"oneOf":[{"type":"string","uniqueKey":"\\items.items.[INDEX].oneOf.0.poster_path.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"\\items.items.[INDEX].oneOf.0.poster_path.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].oneOf.0.poster_path","typeLabel":"string | null"},"still_path":{"oneOf":[{"type":"string","uniqueKey":"\\items.items.[INDEX].oneOf.0.still_path.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"\\items.items.[INDEX].oneOf.0.still_path.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].oneOf.0.still_path","typeLabel":"string | null"},"runtime_minutes":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.0.runtime_minutes","typeLabel":"integer"}},"additionalProperties":false,"uniqueKey":"\\items.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","required":["client_item_id","kind","watched_at","imdb_id"],"properties":{"client_item_id":{"type":"string","minLength":1,"maxLength":200,"isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.1.client_item_id","typeLabel":"string"},"kind":{"type":"string","enum":["movie","episode"],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.1.kind","typeLabel":"enum\u003cstring>"},"imdb_id":{"type":"string","pattern":"^tt\\d+$","isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.1.imdb_id","typeLabel":"string"},"watched_at":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.1.watched_at","typeLabel":"string\u003cdate-time>"},"tmdb_id":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.1.tmdb_id","typeLabel":"integer"},"tvdb_id":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.1.tvdb_id","typeLabel":"integer"},"mal_id":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.1.mal_id","typeLabel":"integer"},"title":{"type":"string","minLength":1,"maxLength":500,"uniqueKey":"\\items.items.[INDEX].oneOf.1.title","typeLabel":"string"},"year":{"type":"integer","minimum":1888,"maximum":2100,"uniqueKey":"\\items.items.[INDEX].oneOf.1.year","typeLabel":"integer"},"season":{"type":"integer","minimum":0,"uniqueKey":"\\items.items.[INDEX].oneOf.1.season","typeLabel":"integer"},"episode":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.1.episode","typeLabel":"integer"},"episode_title":{"type":"string","maxLength":500,"uniqueKey":"\\items.items.[INDEX].oneOf.1.episode_title","typeLabel":"string"},"poster_path":{"oneOf":[{"type":"string","uniqueKey":"\\items.items.[INDEX].oneOf.1.poster_path.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"\\items.items.[INDEX].oneOf.1.poster_path.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].oneOf.1.poster_path","typeLabel":"string | null"},"still_path":{"oneOf":[{"type":"string","uniqueKey":"\\items.items.[INDEX].oneOf.1.still_path.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"\\items.items.[INDEX].oneOf.1.still_path.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].oneOf.1.still_path","typeLabel":"string | null"},"runtime_minutes":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.1.runtime_minutes","typeLabel":"integer"}},"additionalProperties":false,"uniqueKey":"\\items.items.[INDEX].oneOf.1","typeLabel":"object"},{"type":"object","required":["client_item_id","kind","watched_at","tvdb_id"],"properties":{"client_item_id":{"type":"string","minLength":1,"maxLength":200,"isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.2.client_item_id","typeLabel":"string"},"kind":{"type":"string","enum":["movie","episode"],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.2.kind","typeLabel":"enum\u003cstring>"},"tvdb_id":{"type":"integer","minimum":1,"isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.2.tvdb_id","typeLabel":"integer"},"watched_at":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.2.watched_at","typeLabel":"string\u003cdate-time>"},"tmdb_id":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.2.tmdb_id","typeLabel":"integer"},"imdb_id":{"type":"string","pattern":"^tt\\d+$","uniqueKey":"\\items.items.[INDEX].oneOf.2.imdb_id","typeLabel":"string"},"mal_id":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.2.mal_id","typeLabel":"integer"},"title":{"type":"string","minLength":1,"maxLength":500,"uniqueKey":"\\items.items.[INDEX].oneOf.2.title","typeLabel":"string"},"year":{"type":"integer","minimum":1888,"maximum":2100,"uniqueKey":"\\items.items.[INDEX].oneOf.2.year","typeLabel":"integer"},"season":{"type":"integer","minimum":0,"uniqueKey":"\\items.items.[INDEX].oneOf.2.season","typeLabel":"integer"},"episode":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.2.episode","typeLabel":"integer"},"episode_title":{"type":"string","maxLength":500,"uniqueKey":"\\items.items.[INDEX].oneOf.2.episode_title","typeLabel":"string"},"poster_path":{"oneOf":[{"type":"string","uniqueKey":"\\items.items.[INDEX].oneOf.2.poster_path.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"\\items.items.[INDEX].oneOf.2.poster_path.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].oneOf.2.poster_path","typeLabel":"string | null"},"still_path":{"oneOf":[{"type":"string","uniqueKey":"\\items.items.[INDEX].oneOf.2.still_path.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"\\items.items.[INDEX].oneOf.2.still_path.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].oneOf.2.still_path","typeLabel":"string | null"},"runtime_minutes":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.2.runtime_minutes","typeLabel":"integer"}},"additionalProperties":false,"uniqueKey":"\\items.items.[INDEX].oneOf.2","typeLabel":"object"},{"type":"object","required":["client_item_id","kind","watched_at","mal_id"],"properties":{"client_item_id":{"type":"string","minLength":1,"maxLength":200,"isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.3.client_item_id","typeLabel":"string"},"kind":{"type":"string","enum":["movie","episode"],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.3.kind","typeLabel":"enum\u003cstring>"},"mal_id":{"type":"integer","minimum":1,"isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.3.mal_id","typeLabel":"integer"},"watched_at":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"\\items.items.[INDEX].oneOf.3.watched_at","typeLabel":"string\u003cdate-time>"},"tmdb_id":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.3.tmdb_id","typeLabel":"integer"},"imdb_id":{"type":"string","pattern":"^tt\\d+$","uniqueKey":"\\items.items.[INDEX].oneOf.3.imdb_id","typeLabel":"string"},"tvdb_id":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.3.tvdb_id","typeLabel":"integer"},"title":{"type":"string","minLength":1,"maxLength":500,"uniqueKey":"\\items.items.[INDEX].oneOf.3.title","typeLabel":"string"},"year":{"type":"integer","minimum":1888,"maximum":2100,"uniqueKey":"\\items.items.[INDEX].oneOf.3.year","typeLabel":"integer"},"season":{"type":"integer","minimum":0,"uniqueKey":"\\items.items.[INDEX].oneOf.3.season","typeLabel":"integer"},"episode":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.3.episode","typeLabel":"integer"},"episode_title":{"type":"string","maxLength":500,"uniqueKey":"\\items.items.[INDEX].oneOf.3.episode_title","typeLabel":"string"},"poster_path":{"oneOf":[{"type":"string","uniqueKey":"\\items.items.[INDEX].oneOf.3.poster_path.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"\\items.items.[INDEX].oneOf.3.poster_path.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].oneOf.3.poster_path","typeLabel":"string | null"},"still_path":{"oneOf":[{"type":"string","uniqueKey":"\\items.items.[INDEX].oneOf.3.still_path.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"\\items.items.[INDEX].oneOf.3.still_path.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].oneOf.3.still_path","typeLabel":"string | null"},"runtime_minutes":{"type":"integer","minimum":1,"uniqueKey":"\\items.items.[INDEX].oneOf.3.runtime_minutes","typeLabel":"integer"}},"additionalProperties":false,"uniqueKey":"\\items.items.[INDEX].oneOf.3","typeLabel":"object"}],"uniqueKey":"\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"\\items","typeLabel":"object[]"}},"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"items":[{"client_item_id":"\u003cstring>","tmdb_id":2,"watched_at":"2023-11-07T05:31:56Z","imdb_id":"\u003cstring>","tvdb_id":2,"mal_id":2,"title":"\u003cstring>","year":1994,"season":1,"episode":2,"episode_title":"\u003cstring>","poster_path":"\u003cstring>","still_path":"\u003cstring>","runtime_minutes":2}]}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"70db49c7-5c79-45a1-91a6-bfbcb6d8ace4":{"description":"Per-item bulk mutation outcomes","content":{"application/json":{"schema":{"type":"object","required":["results"],"properties":{"results":{"type":"array","items":{"type":"object","required":["client_item_id","index","status"],"properties":{"client_item_id":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"results.items.[INDEX].client_item_id.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"results.items.[INDEX].client_item_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"results.items.[INDEX].client_item_id","typeLabel":"string | null"},"index":{"type":"integer","minimum":0,"isRequired":true,"uniqueKey":"results.items.[INDEX].index","typeLabel":"integer"},"status":{"type":"string","enum":["inserted","updated","removed","skipped","invalid","deferred"],"isRequired":true,"uniqueKey":"results.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"id":{"type":"integer","minimum":1,"uniqueKey":"results.items.[INDEX].id","typeLabel":"integer"},"reason":{"type":"string","enum":["unmatched","resolver_unavailable"],"uniqueKey":"results.items.[INDEX].reason","typeLabel":"enum\u003cstring>"},"resolved_tmdb_id":{"type":"integer","minimum":1,"uniqueKey":"results.items.[INDEX].resolved_tmdb_id","typeLabel":"integer"},"stored":{"type":"object","description":"Where a history item's row is stored, returned on history results that carry an id. Anime episodes are kept in official TVDB order, so these can differ from the season and episode sent: TMDB S1E14 of a show TVDB splits into seasons may be stored as S2E1, with media_source tvdb and source_id the TVDB series id. Match history rows read back against these values, or against clientItemId.","required":["media_source","source_id","season","episode"],"properties":{"media_source":{"type":"string","description":"tmdb or tvdb, matching mediaSource on history rows.","isRequired":true,"uniqueKey":"results.items.[INDEX].stored.media_source","typeLabel":"string"},"source_id":{"type":"integer","minimum":1,"description":"TMDB id when media_source is tmdb, TVDB series id when it is tvdb.","isRequired":true,"uniqueKey":"results.items.[INDEX].stored.source_id","typeLabel":"integer"},"season":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"results.items.[INDEX].stored.season.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"results.items.[INDEX].stored.season.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"results.items.[INDEX].stored.season","typeLabel":"integer | null"},"episode":{"oneOf":[{"type":"integer","isRequired":true,"uniqueKey":"results.items.[INDEX].stored.episode.oneOf.0","typeLabel":"integer"},{"type":"null","isRequired":true,"uniqueKey":"results.items.[INDEX].stored.episode.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"results.items.[INDEX].stored.episode","typeLabel":"integer | null"}},"additionalProperties":false,"uniqueKey":"results.items.[INDEX].stored","typeLabel":"object"},"error":{"type":"string","uniqueKey":"results.items.[INDEX].error","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"results.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"results","typeLabel":"object[]"},"inserted":{"type":"integer","minimum":0,"uniqueKey":"inserted","typeLabel":"integer"},"updated":{"type":"integer","minimum":0,"uniqueKey":"updated","typeLabel":"integer"},"removed":{"type":"integer","minimum":0,"uniqueKey":"removed","typeLabel":"integer"},"skipped":{"type":"integer","minimum":0,"uniqueKey":"skipped","typeLabel":"integer"},"invalid":{"type":"integer","minimum":0,"uniqueKey":"invalid","typeLabel":"integer"},"deferred":{"type":"integer","minimum":0,"uniqueKey":"deferred","typeLabel":"integer"},"idempotency_replayed":{"type":"boolean","uniqueKey":"idempotency_replayed","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"results":[{"client_item_id":"\u003cstring>","index":1,"status":"inserted","id":2,"reason":"unmatched","resolved_tmdb_id":2,"stored":{"media_source":"\u003cstring>","source_id":2,"season":123,"episode":123},"error":"\u003cstring>"}],"inserted":1,"updated":1,"removed":1,"skipped":1,"invalid":1,"deferred":1,"idempotency_replayed":true}}},"exampleType":"generated"}},"headers":{"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Ceiling of the most constraining bucket for this request."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requests remaining in the current window."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Unix time in seconds when the current window resets."}},"exampleType":"generated"},"4054b7db-f694-4d10-a246-45157975da8c":{"description":"API error","headers":{"X-PunchPlay-Request-Id":{"schema":{"type":"string"}},"Retry-After":{"schema":{"type":"integer","minimum":0},"description":"Seconds until the client should retry a rate-limited request."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Ceiling of the most constraining bucket for this request."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requests remaining in the current window."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Unix time in seconds when the current window resets."}},"content":{"application/json":{"schema":{"type":"object","required":["error","message","request_id"],"properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"request_id":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"request_id","typeLabel":"string | null"},"required_scope":{"type":"string","uniqueKey":"required_scope","typeLabel":"string"}},"additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","message":"\u003cstring>","request_id":"\u003cstring>","required_scope":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"929d7018-9965-49d9-b06f-11fb5416c578":{"description":"API error","headers":{"X-PunchPlay-Request-Id":{"schema":{"type":"string"}},"Retry-After":{"schema":{"type":"integer","minimum":0},"description":"Seconds until the client should retry a rate-limited request."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Ceiling of the most constraining bucket for this request."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requests remaining in the current window."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Unix time in seconds when the current window resets."}},"content":{"application/json":{"schema":{"type":"object","required":["error","message","request_id"],"properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"request_id":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"request_id","typeLabel":"string | null"},"required_scope":{"type":"string","uniqueKey":"required_scope","typeLabel":"string"}},"additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","message":"\u003cstring>","request_id":"\u003cstring>","required_scope":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"b76956db-730b-4fdb-87ba-2edd80c17305":{"description":"API error","headers":{"X-PunchPlay-Request-Id":{"schema":{"type":"string"}},"Retry-After":{"schema":{"type":"integer","minimum":0},"description":"Seconds until the client should retry a rate-limited request."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Ceiling of the most constraining bucket for this request."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requests remaining in the current window."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Unix time in seconds when the current window resets."}},"content":{"application/json":{"schema":{"type":"object","required":["error","message","request_id"],"properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"request_id":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"request_id","typeLabel":"string | null"},"required_scope":{"type":"string","uniqueKey":"required_scope","typeLabel":"string"}},"additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","message":"\u003cstring>","request_id":"\u003cstring>","required_scope":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"ac5c0420-3700-4e9e-b794-5dd61da5357d":{"description":"API error","headers":{"X-PunchPlay-Request-Id":{"schema":{"type":"string"}},"Retry-After":{"schema":{"type":"integer","minimum":0},"description":"Seconds until the client should retry a rate-limited request."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Ceiling of the most constraining bucket for this request."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requests remaining in the current window."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Unix time in seconds when the current window resets."}},"content":{"application/json":{"schema":{"type":"object","required":["error","message","request_id"],"properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"request_id":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"request_id","typeLabel":"string | null"},"required_scope":{"type":"string","uniqueKey":"required_scope","typeLabel":"string"}},"additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","message":"\u003cstring>","request_id":"\u003cstring>","required_scope":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"22918cc7-2484-4516-a5f7-7eec6f5acaeb":{"description":"API error","headers":{"X-PunchPlay-Request-Id":{"schema":{"type":"string"}},"Retry-After":{"schema":{"type":"integer","minimum":0},"description":"Seconds until the client should retry a rate-limited request."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Ceiling of the most constraining bucket for this request."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requests remaining in the current window."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Unix time in seconds when the current window resets."}},"content":{"application/json":{"schema":{"type":"object","required":["error","message","request_id"],"properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"request_id":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"request_id","typeLabel":"string | null"},"required_scope":{"type":"string","uniqueKey":"required_scope","typeLabel":"string"}},"additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","message":"\u003cstring>","request_id":"\u003cstring>","required_scope":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"0b4e78a2-af94-47d8-89e7-bf8279788b6e":{"description":"API error","headers":{"X-PunchPlay-Request-Id":{"schema":{"type":"string"}},"Retry-After":{"schema":{"type":"integer","minimum":0},"description":"Seconds until the client should retry a rate-limited request."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Ceiling of the most constraining bucket for this request."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requests remaining in the current window."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Unix time in seconds when the current window resets."}},"content":{"application/json":{"schema":{"type":"object","required":["error","message","request_id"],"properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"request_id":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"request_id","typeLabel":"string | null"},"required_scope":{"type":"string","uniqueKey":"required_scope","typeLabel":"string"}},"additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","message":"\u003cstring>","request_id":"\u003cstring>","required_scope":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"d427e1ec-edaf-4f00-b44e-069b43e1aea8":{"description":"API error","headers":{"X-PunchPlay-Request-Id":{"schema":{"type":"string"}},"Retry-After":{"schema":{"type":"integer","minimum":0},"description":"Seconds until the client should retry a rate-limited request."},"X-RateLimit-Limit":{"schema":{"type":"integer"},"description":"Ceiling of the most constraining bucket for this request."},"X-RateLimit-Remaining":{"schema":{"type":"integer"},"description":"Requests remaining in the current window."},"X-RateLimit-Reset":{"schema":{"type":"integer"},"description":"Unix time in seconds when the current window resets."}},"content":{"application/json":{"schema":{"type":"object","required":["error","message","request_id"],"properties":{"error":{"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"request_id":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"request_id.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"request_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"request_id","typeLabel":"string | null"},"required_scope":{"type":"string","uniqueKey":"required_scope","typeLabel":"string"}},"additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","message":"\u003cstring>","request_id":"\u003cstring>","required_scope":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"896c9bd7-0f56-496c-bb94-ab880caaeea3":{"oauth2":{"type":"oauth2","flows":{"authorizationCode":{"authorizationUrl":"/api/platform/v1/oauth/authorize","tokenUrl":"/api/platform/v1/oauth/token","scopes":{"profile:read":"Read basic profile and title metadata","history:read":"Read watch history","history:write":"Log, edit, and delete watches","lists:read":"Read lists","lists:write":"Create and edit lists","ratings:read":"Read ratings, favourites, and statuses","ratings:write":"Rate, favourite, and change statuses","collection:read":"Read collection items","collection:write":"Add and remove collection items","notifications:read":"Read notifications and notification preferences","notifications:write":"Manage notification read state and preferences","trophies:read":"Read trophy progress","profile:write":"Update profile details and preferences","playback:read":"Read playback and continue-watching state","playback:write":"Update playback state","events:read":"Subscribe to playback events"}}},"scopes":["history:write"],"schemeName":"oauth2"}}},"servers":{"a7698a87-c1b4-46e8-9983-1d7e34dcdb3c":{"url":"https://punchplay.tv","description":"Production"},"dd47bf98-d7b5-4de3-bce5-dd56762da867":{"url":"http://localhost:3000","description":"Local development"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"oauth2","flows":{"authorizationCode":{"authorizationUrl":"/api/platform/v1/oauth/authorize","tokenUrl":"/api/platform/v1/oauth/token","scopes":{"profile:read":"Read basic profile and title metadata","history:read":"Read watch history","history:write":"Log, edit, and delete watches","lists:read":"Read lists","lists:write":"Create and edit lists","ratings:read":"Read ratings, favourites, and statuses","ratings:write":"Rate, favourite, and change statuses","collection:read":"Read collection items","collection:write":"Add and remove collection items","notifications:read":"Read notifications and notification preferences","notifications:write":"Manage notification read state and preferences","trophies:read":"Read trophy progress","profile:write":"Update profile details and preferences","playback:read":"Read playback and continue-watching state","playback:write":"Update playback state","events:read":"Subscribe to playback events"}}},"scopes":["history:write"],"schemeName":"oauth2"},"schema":{"title":"OAuth2 Auth","type":"string","isRequired":true,"description":"The access token received from the authorization server in the OAuth 2.0 flow.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"oauth2","name":"Authorization"}],"title":"oauth2"}]},"originalFileLocation":"openapi.yaml"},"subdomain":"punchplay","siteName":"PunchPlay","title":"Idempotently insert up to 100 history items - PunchPlay","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-14T09:39:31.875Z","originalFileLocation":"api-reference/sync/idempotently-insert-up-to-100-history-items.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"application-name\" content=\"PunchPlay\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/punchplay/mHXNcMpIBKiZFulQ/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/punchplay/mHXNcMpIBKiZFulQ/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/punchplay/mHXNcMpIBKiZFulQ/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/punchplay/mHXNcMpIBKiZFulQ/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/punchplay/mHXNcMpIBKiZFulQ/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/punchplay/mHXNcMpIBKiZFulQ/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/punchplay/mHXNcMpIBKiZFulQ/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/punchplay/mHXNcMpIBKiZFulQ/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/punchplay/mHXNcMpIBKiZFulQ/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Idempotently insert up to 100 history items - PunchPlay\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"PunchPlay\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.punchplay.tv/api-reference/sync/idempotently-insert-up-to-100-history-items\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://punchplay.mintlify.app/_mintlify/api/og/v2?division=Sync\u0026amp;title=Idempotently+insert+up+to+100+history+items\u0026amp;theme=a57b5db8689d66d0ede34f43\u0026amp;signature=581f038839e5d655502ec4bca0ad8733ac380f41bddbcaa67982941833aeaf65\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Idempotently insert up to 100 history items - PunchPlay\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://punchplay.mintlify.app/_mintlify/api/og/v2?division=Sync\u0026amp;title=Idempotently+insert+up+to+100+history+items\u0026amp;theme=a57b5db8689d66d0ede34f43\u0026amp;signature=581f038839e5d655502ec4bca0ad8733ac380f41bddbcaa67982941833aeaf65\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/punchplay/mHXNcMpIBKiZFulQ/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"PunchPlay\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#4ca2ff\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.punchplay.tv/api-reference/sync/idempotently-insert-up-to-100-history-items\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/sync/idempotently-insert-up-to-100-history-items.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.punchplay.tv/#organization\",\"name\":\"PunchPlay\",\"url\":\"https://docs.punchplay.tv\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/punchplay/IKkrwHZRg_AjfVgz/brand/punchplay-logo-light.svg?fit=max\u0026auto=format\u0026n=IKkrwHZRg_AjfVgz\u0026q=85\u0026s=c3da49be29551dd33f277ebb2b1cc3d5\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.punchplay.tv#website\",\"name\":\"PunchPlay\",\"url\":\"https://docs.punchplay.tv\",\"publisher\":{\"@id\":\"https://docs.punchplay.tv/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.punchplay.tv/api-reference/sync/idempotently-insert-up-to-100-history-items#webpage\",\"url\":\"https://docs.punchplay.tv/api-reference/sync/idempotently-insert-up-to-100-history-items\",\"name\":\"Idempotently insert up to 100 history items\",\"dateModified\":\"2026-10-14T09:39:31.875Z\",\"isPartOf\":{\"@id\":\"https://docs.punchplay.tv#website\"},\"breadcrumb\":{\"@id\":\"https://docs.punchplay.tv/api-reference/sync/idempotently-insert-up-to-100-history-items#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.punchplay.tv/api-reference/sync/idempotently-insert-up-to-100-history-items#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Reference\",\"item\":\"https://docs.punchplay.tv/api-reference/authentication/start-device-authorization\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sync\",\"item\":\"https://docs.punchplay.tv/api-reference/sync/get-ordered-account-changes-and-deletion-tombstones\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Idempotently insert up to 100 history items\",\"item\":\"https://docs.punchplay.tv/api-reference/sync/idempotently-insert-up-to-100-history-items\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.punchplay.tv/api-reference/sync/idempotently-insert-up-to-100-history-items#apireference\",\"headline\":\"Idempotently insert up to 100 history items\",\"name\":\"Idempotently insert up to 100 history items\",\"url\":\"https://docs.punchplay.tv/api-reference/sync/idempotently-insert-up-to-100-history-items\",\"mainEntityOfPage\":{\"@id\":\"https://docs.punchplay.tv/api-reference/sync/idempotently-insert-up-to-100-history-items#webpage\"},\"dateModified\":\"2026-10-14T09:39:31.875Z\",\"publisher\":{\"@id\":\"https://docs.punchplay.tv/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.punchplay.tv#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"PunchPlay\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"PunchPlay","nav":{"global":null,"groups":[{"group":"Getting Started","icon":"rocket","pages":[{"title":"Overview","icon":"house","href":"/index"},{"title":"Quickstart","icon":"zap","href":"/quickstart"},{"title":"Authentication","icon":"shield","href":"/authentication"}]},{"group":"Guides","icon":"book-open","pages":[{"title":"Native App API","icon":"smartphone","href":"/native-app-api"},{"title":"Playback API","icon":"circle-play","href":"/playback-api"},{"title":"Live Events","icon":"signal","href":"/live-events"},{"title":"Partner Sync","icon":"refresh-cw","href":"/partner-sync"},{"title":"Data Conventions","icon":"brackets","href":"/data-conventions"},{"title":"Android \u0026 TV Integration","icon":"smartphone","href":"/kotlin-integration"},{"title":"Public API","icon":"users","href":"/public-api"},{"title":"Errors \u0026 Rate Limits","icon":"circle-alert","href":"/errors-rate-limits"},{"title":"Changelog","icon":"history","href":"/changelog"}]},{"group":"Reference","icon":"code-2","pages":[{"group":"Authentication","pages":[{"title":"Start device authorization","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/auth/device/code","href":"/api-reference/authentication/start-device-authorization"},{"title":"Exchange an approved device code","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/auth/device/token","href":"/api-reference/authentication/exchange-an-approved-device-code"},{"title":"Refresh a device-flow token","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/auth/refresh","href":"/api-reference/authentication/refresh-a-device-flow-token"},{"title":"Show the OAuth consent screen","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/oauth/authorize","href":"/api-reference/authentication/show-the-oauth-consent-screen"},{"title":"Exchange an authorization code or refresh token","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/oauth/token","href":"/api-reference/authentication/exchange-an-authorization-code-or-refresh-token"},{"title":"Revoke an access or refresh token","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/oauth/revoke","href":"/api-reference/authentication/revoke-an-access-or-refresh-token"}]},{"group":"Profile","pages":[{"title":"Get the authenticated user and granted scopes","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me","href":"/api-reference/profile/get-the-authenticated-user-and-granted-scopes"},{"title":"Get editable profile details","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/profile","href":"/api-reference/profile/get-editable-profile-details"},{"title":"Update profile details","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /api/platform/v1/me/profile","href":"/api-reference/profile/update-profile-details"},{"title":"Get display and regional preferences","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/preferences","href":"/api-reference/profile/get-display-and-regional-preferences"},{"title":"Update display and regional preferences","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /api/platform/v1/me/preferences","href":"/api-reference/profile/update-display-and-regional-preferences"}]},{"group":"Community","pages":[{"title":"Get the user's community statistics and weekly challenges","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/community-stats","href":"/api-reference/community/get-the-users-community-statistics-and-weekly-challenges"},{"title":"Claim completed weekly challenge rewards idempotently","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/me/community-stats","href":"/api-reference/community/claim-completed-weekly-challenge-rewards-idempotently"}]},{"group":"Notifications","pages":[{"title":"Get cursor-paginated notifications","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/notifications","href":"/api-reference/notifications/get-cursor-paginated-notifications"},{"title":"Get the unread notification count","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/notifications/unread-count","href":"/api-reference/notifications/get-the-unread-notification-count"},{"title":"Mark one notification, or all notifications, as read","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/me/notifications/read","href":"/api-reference/notifications/mark-one-notification-or-all-notifications-as-read"},{"title":"Get push notification preferences","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/notification-preferences","href":"/api-reference/notifications/get-push-notification-preferences"},{"title":"Update push notification preferences","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /api/platform/v1/me/notification-preferences","href":"/api-reference/notifications/update-push-notification-preferences"}]},{"group":"Trophies","pages":[{"title":"Get trophy progress and earned totals","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/trophies","href":"/api-reference/trophies/get-trophy-progress-and-earned-totals"}]},{"group":"Calendar","pages":[{"title":"Get upcoming releases for the user's saved titles","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/calendar","href":"/api-reference/calendar/get-upcoming-releases-for-the-users-saved-titles"}]},{"group":"History","pages":[{"title":"Get cursor-paginated watch history","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/history","href":"/api-reference/history/get-cursor-paginated-watch-history"},{"title":"Delete a history entry","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /api/platform/v1/watch-history/{id}","href":"/api-reference/history/delete-a-history-entry"},{"title":"Change a history entry's watched time","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /api/platform/v1/watch-history/{id}","href":"/api-reference/history/change-a-history-entrys-watched-time"},{"title":"Log a movie watch","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/title/{type}/{id}/history","href":"/api-reference/history/log-a-movie-watch"},{"title":"Delete matching history for a title","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /api/platform/v1/title/{type}/{id}/history","href":"/api-reference/history/delete-matching-history-for-a-title"},{"title":"Log multiple episode watches for a season","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/title/{type}/{id}/season/{season}/watch","href":"/api-reference/history/log-multiple-episode-watches-for-a-season"},{"title":"Delete matching episode history for a season","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /api/platform/v1/title/{type}/{id}/season/{season}/watch","href":"/api-reference/history/delete-matching-episode-history-for-a-season"}]},{"group":"Sync","pages":[{"title":"Get ordered account changes and deletion tombstones","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/sync/changes","href":"/api-reference/sync/get-ordered-account-changes-and-deletion-tombstones"},{"title":"Page through the current state of one sync resource","description":null,"deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/sync/snapshot","href":"/api-reference/sync/page-through-the-current-state-of-one-sync-resource"},{"title":"Idempotently insert up to 100 history items","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/sync/history","href":"/api-reference/sync/idempotently-insert-up-to-100-history-items"},{"title":"Idempotently update up to 100 ratings or title interactions","description":null,"deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/sync/ratings","href":"/api-reference/sync/idempotently-update-up-to-100-ratings-or-title-interactions"},{"title":"Idempotently add or remove up to 100 watchlist items","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/sync/watchlist","href":"/api-reference/sync/idempotently-add-or-remove-up-to-100-watchlist-items"}]},{"group":"Titles","pages":[{"title":"Get title metadata and scope-dependent user state","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/title/{type}/{id}","href":"/api-reference/titles/get-title-metadata-and-scope-dependent-user-state"},{"title":"Get a show's season and episodes","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/title/show/{id}/season/{season}","href":"/api-reference/titles/get-a-shows-season-and-episodes"},{"title":"Get episode metadata","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/title/show/{id}/season/{season}/episode/{episode}","href":"/api-reference/titles/get-episode-metadata"}]},{"group":"Ratings","pages":[{"title":"Rate, favourite, plan, or set watch status","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /api/platform/v1/title/{type}/{id}/interact","href":"/api-reference/ratings/rate-favourite-plan-or-set-watch-status"},{"title":"Get the user's ratings","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/ratings","href":"/api-reference/ratings/get-the-users-ratings"},{"title":"Get the user's favourites","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/favourites","href":"/api-reference/ratings/get-the-users-favourites"},{"title":"Get the user's title watch statuses","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/watch-status","href":"/api-reference/ratings/get-the-users-title-watch-statuses"}]},{"group":"Lists","pages":[{"title":"Get the user's cursor-paginated list summaries","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/lists","href":"/api-reference/lists/get-the-users-cursor-paginated-list-summaries"},{"title":"Create a list","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/lists","href":"/api-reference/lists/create-a-list"},{"title":"Get list details","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/lists/{id}","href":"/api-reference/lists/get-list-details"},{"title":"Delete a list","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /api/platform/v1/lists/{id}","href":"/api-reference/lists/delete-a-list"},{"title":"Update a list","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /api/platform/v1/lists/{id}","href":"/api-reference/lists/update-a-list"},{"title":"Get a dynamic list's paginated items","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/lists/{id}/items","href":"/api-reference/lists/get-a-dynamic-lists-paginated-items"},{"title":"Add an item to a list","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/lists/{id}/items","href":"/api-reference/lists/add-an-item-to-a-list"},{"title":"Remove an item from a list","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /api/platform/v1/lists/{id}/items/{itemId}","href":"/api-reference/lists/remove-an-item-from-a-list"}]},{"group":"Collection","pages":[{"title":"Get the user's cursor-paginated collection","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/collection","href":"/api-reference/collection/get-the-users-cursor-paginated-collection"},{"title":"Add a title to the collection","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/collection","href":"/api-reference/collection/add-a-title-to-the-collection"},{"title":"Remove a collection item","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /api/platform/v1/collection/{id}","href":"/api-reference/collection/remove-a-collection-item"}]},{"group":"Playback","pages":[{"title":"Get continue-watching shows","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/continue-watching","href":"/api-reference/playback/get-continue-watching-shows"},{"title":"Get continue-watching details for a show","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/me/continue-watching/{showId}","href":"/api-reference/playback/get-continue-watching-details-for-a-show"},{"title":"Get resumable playback items","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/playback/in-progress","href":"/api-reference/playback/get-resumable-playback-items"},{"title":"Dismiss an in-progress item","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /api/platform/v1/playback/in-progress/{id}","href":"/api-reference/playback/dismiss-an-in-progress-item"},{"title":"Get the most recent active playback item","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/playback/now-playing","href":"/api-reference/playback/get-the-most-recent-active-playback-item"},{"title":"Stream playback changes with server-sent events","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/platform/v1/playback/events","href":"/api-reference/playback/stream-playback-changes-with-server-sent-events"},{"title":"Send a playback lifecycle or progress update","deprecated":null,"version":null,"openapi":"/openapi.yaml post /api/platform/v1/playback/{action}","href":"/api-reference/playback/send-a-playback-lifecycle-or-progress-update"}]},{"group":"Public Catalog","pages":[{"title":"Discover movies, shows, or anime","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/public/v1/catalog/discover","href":"/api-reference/public-catalog/discover-movies-shows-or-anime"},{"title":"Search movies, shows, or anime","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/public/v1/catalog/search","href":"/api-reference/public-catalog/search-movies-shows-or-anime"},{"title":"Get trending movies, shows, or anime","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/public/v1/catalog/trending","href":"/api-reference/public-catalog/get-trending-movies-shows-or-anime"}]},{"group":"Public API","pages":[{"title":"Get the public community overview","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/public/v1/community/overview","href":"/api-reference/public-api/get-the-public-community-overview"},{"title":"Get public API health","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/public/v1/status","href":"/api-reference/public-api/get-public-api-health"}]},{"group":"Public Users","pages":[{"title":"Get a public user profile payload","deprecated":null,"version":null,"openapi":"/openapi.yaml get /api/public/v1/users/{username}","href":"/api-reference/public-users/get-a-public-user-profile-payload"}]}]}]},"title":"Idempotently insert up to 100 history items - PunchPlay","buildId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","deploymentId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-WRhTSUDL.js","utils-ChMov4Kr.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-_REmC2bI.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Bp6nVRCu.js","snippetPresets-DZadmXoU.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CY2WdoTl.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-DwYG-Q4l.js","shallow-BXQIGwv4.js","getApiPlaygroundDisplay-CK5nK5B9.js","CodeSnippet-TH4a2aGW.js","CodeSnippets-DwsQiOFS.js","Page-R3M_BF4L.js","getPastedJson-DD7kUzi_.js","icon-holE3QoJ.js","MethodPill-DUW0T8us.js","DuplicateIcon-CI_p4be-.js","createIcon-BdbRvavb.js","DynamicMarkdown-DN96a4Ur.js","SectionHeading-SCu36A9d.js","axios-vUo_bRtp.js","Markdown-CCeGv-zI.js","clsx-BGBGWFTt.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-Cv_O2fky.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-2C5OB2eV.js"]}