The ID of the user who is entitled to access the content.
The user ID must be contained in the JWT token that the user authenticates with on the content-delivery API.
The amount of devices that can concurrently view the content associated with this entitlement from a single account.
If not provided, there is no limit.
This typically refers to the number of devices that can concurrently view the content associated with the offer,
but may deviate in certain conditions (e.g. when the entitlement is created via this API and should have a different limit,
or when the offer's concurrency limit has changed since the original entitlement was created).
The two-character ISO 3166-1 alpha-2 country code of the country where the user obtained the entitlement.
This may be used to bypass geo-restrictions in certain conditions, e.g. when the user is traveling and is protected
by EU regulations (https://europa.eu/youreurope/citizens/consumers/internet-telecoms/access-online-content-abroad/index_en.htm).
If not provided, the entitlement will not be able to bypass geo-restrictions.
Entitlements represent an end-users permission to access event or creative work content.
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Motto","colors":{"primary":"#a855f7","light":"#a855f7","dark":"#0D001D"},"logo":{"light":"https://mintcdn.com/motto/cBpRj-PyqIlSlCJu/logo/light.png?fit=max\u0026auto=format\u0026n=cBpRj-PyqIlSlCJu\u0026q=85\u0026s=d4bd8dad415fff9053d11f4b5985ad6f","dark":"https://mintcdn.com/motto/cBpRj-PyqIlSlCJu/logo/dark.png?fit=max\u0026auto=format\u0026n=cBpRj-PyqIlSlCJu\u0026q=85\u0026s=d16a9715252bd80539bc4bf89efd706a"},"favicon":"https://mintcdn.com/motto/cBpRj-PyqIlSlCJu/favicon.png?fit=max\u0026auto=format\u0026n=cBpRj-PyqIlSlCJu\u0026q=85\u0026s=a0054a4ad50f171682929414acb56fa5","api":{"openapi":"https://api-docs.mottostreaming.com/openapi.yaml","mdx":{"auth":{"method":"bearer"},"server":"https://api.mottostreaming.com"}},"background":{"color":{"dark":"#090014"}},"navbar":{"links":[{"href":"https://mottostreaming.com","label":"Home"},{"href":"https://mottostreaming.com/pricing","label":"Pricing"},{"href":"https://mottostreaming.com/#contact-us","label":"Support"}],"primary":{"type":"button","label":"Studio","href":"https://studio.mottostreaming.com"}},"footer":{"socials":{}},"integrations":{"ga4":{"measurementId":"G-QK6SPBBH9B"}},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"GitHub","icon":"github","href":"https://github.com/MottoStreaming"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"motto","hasAudioNarration":false,"actualSubdomain":"motto","customDomains":["docs.mottostreaming.com"],"gitSource":{"type":"github","owner":"mottostreaming","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ad5ee9c51fe126bdabcdb8b","collectionId":"288df33c-8608-43bb-8a99-5c5b90b7078b","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ad5ee9c51fe126bdabcdb8b"},"entitlements":{},"buildId":"6ad5f148a4240b47121a3bfe","clientVersion":"0.0.4045","searchFilterCounts":[{"language":"default","tag":"API Reference","count":104},{"language":"default","tag":"Studio API","count":102},{"language":"default","tag":"Streaming","count":66},{"language":"default","tag":"Documentation","count":39},{"language":"default","tag":"CMS","count":36},{"language":"default","tag":"Assets","count":16},{"language":"default","tag":"IAM","count":14},{"language":"default","tag":"Live Streams","count":13},{"language":"default","tag":"Sports Standings","count":10},{"language":"default","tag":"Monetization","count":9}]},"assistantConfig":{},"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":"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":"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":"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":"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":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","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":"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":"turbopuffer-dual-write","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},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"reference/studio-api/monetization/entitlements/v1/upsert-entitlement","slug":"/reference/studio-api/monetization/entitlements/v1/upsert-entitlement","pageMetadata":{"openapi":"post /monetization/entitlements/v1","title":null,"description":"UpsertEntitlement\n\n Upserts a new entitlement or updates an existing entitlement.\n\n Note: If you wish to invalidate an existing entitlement, set the `expires_at` field to any moment in the past.","href":"/reference/studio-api/monetization/entitlements/v1/upsert-entitlement"},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"UpsertEntitlement\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"Upserts a new entitlement or updates an existing entitlement.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Note: If you wish to invalidate an existing entitlement, set the \", _jsx(_components.code, {\n children: \"expires_at\"\n }), \" field to any moment in the past.\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"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":{"openapi":"post /monetization/entitlements/v1","title":null,"description":"UpsertEntitlement\n\n Upserts a new entitlement or updates an existing entitlement.\n\n Note: If you wish to invalidate an existing entitlement, set the `expires_at` field to any moment in the past.","href":"/reference/studio-api/monetization/entitlements/v1/upsert-entitlement"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["EntitlementService"],"description":"UpsertEntitlement\n\n Upserts a new entitlement or updates an existing entitlement.\n\n Note: If you wish to invalidate an existing entitlement, set the `expires_at` field to any moment in the past.","operationId":"EntitlementService_UpsertEntitlement","requestBody":"062b2dfb-8757-4877-839e-d7dbbd0a000b","responses":{"200":"307d296b-23ee-4b52-a60a-8fb22c053a91","default":"6caf9aeb-efd5-4e69-aa89-ee369bfb5fab"},"method":"post","type":"path","servers":["3d936636-60f5-4659-a50d-e16fb1741a96"],"security":["98781b50-5b14-4e89-a1c5-ce732bba9b80"],"path":"/monetization/entitlements/v1","baseUrlOptions":["https://api.mottostreaming.com"],"title":"","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"content":{"application/json":{"schema":{"required":["user_id","project_id","offer_id"],"type":"object","properties":{"user_id":{"type":"string","description":"The ID of the user who is entitled to access the content.\n The user ID must be contained in the JWT token that the user authenticates with on the content-delivery API.","isRequired":true,"uniqueKey":"user_id","typeLabel":"string"},"project_id":{"type":"string","isRequired":true,"uniqueKey":"project_id","typeLabel":"string"},"offer_id":{"type":"string","description":"The offer that the user is entitled to access. For more information, see `Offer`.","isRequired":true,"uniqueKey":"offer_id","typeLabel":"string"},"expiration_time":{"type":"string","description":"The time at which the entitlement is no longer valid.\n If not provided, the entitlement will not expire.","format":"date-time","uniqueKey":"expiration_time","typeLabel":"string\u003cdate-time>"},"source_type":{"type":"string","description":"A string representing the type of the source of the entitlement. For example, `cleeng` or `motto`.","uniqueKey":"source_type","typeLabel":"string"},"source_id":{"type":"string","description":"An identifier of the source of the entitlement. For example, the Cleeng transaction ID or the Motto transaction ID.","uniqueKey":"source_id","typeLabel":"string"},"concurrency_limit":{"type":"string","description":"The amount of devices that can concurrently view the content associated with this entitlement from a single account.\n If not provided, there is no limit.\n This typically refers to the number of devices that can concurrently view the content associated with the offer,\n but may deviate in certain conditions (e.g. when the entitlement is created via this API and should have a different limit,\n or when the offer's concurrency limit has changed since the original entitlement was created).","uniqueKey":"concurrency_limit","typeLabel":"string"},"origin_country_code":{"type":"string","description":"The two-character ISO 3166-1 alpha-2 country code of the country where the user obtained the entitlement.\n This may be used to bypass geo-restrictions in certain conditions, e.g. when the user is traveling and is protected\n by EU regulations (https://europa.eu/youreurope/citizens/consumers/internet-telecoms/access-online-content-abroad/index_en.htm).\n If not provided, the entitlement will not be able to bypass geo-restrictions.","uniqueKey":"origin_country_code","typeLabel":"string"}},"description":"Entitlements represent an end-users permission to access event or creative work content.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"user_id":"\u003cstring>","project_id":"\u003cstring>","offer_id":"\u003cstring>","expiration_time":"2023-11-07T05:31:56Z","source_type":"\u003cstring>","source_id":"\u003cstring>","concurrency_limit":"\u003cstring>","origin_country_code":"\u003cstring>"}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"307d296b-23ee-4b52-a60a-8fb22c053a91":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"entitlement":{"required":["user_id","project_id","offer_id"],"type":"object","properties":{"user_id":{"type":"string","description":"The ID of the user who is entitled to access the content.\n The user ID must be contained in the JWT token that the user authenticates with on the content-delivery API.","isRequired":true,"uniqueKey":"entitlement.user_id","typeLabel":"string"},"project_id":{"type":"string","isRequired":true,"uniqueKey":"entitlement.project_id","typeLabel":"string"},"offer_id":{"type":"string","description":"The offer that the user is entitled to access. For more information, see `Offer`.","isRequired":true,"uniqueKey":"entitlement.offer_id","typeLabel":"string"},"expiration_time":{"type":"string","description":"The time at which the entitlement is no longer valid.\n If not provided, the entitlement will not expire.","format":"date-time","uniqueKey":"entitlement.expiration_time","typeLabel":"string\u003cdate-time>"},"source_type":{"type":"string","description":"A string representing the type of the source of the entitlement. For example, `cleeng` or `motto`.","uniqueKey":"entitlement.source_type","typeLabel":"string"},"source_id":{"type":"string","description":"An identifier of the source of the entitlement. For example, the Cleeng transaction ID or the Motto transaction ID.","uniqueKey":"entitlement.source_id","typeLabel":"string"},"concurrency_limit":{"type":"string","description":"The amount of devices that can concurrently view the content associated with this entitlement from a single account.\n If not provided, there is no limit.\n This typically refers to the number of devices that can concurrently view the content associated with the offer,\n but may deviate in certain conditions (e.g. when the entitlement is created via this API and should have a different limit,\n or when the offer's concurrency limit has changed since the original entitlement was created).","uniqueKey":"entitlement.concurrency_limit","typeLabel":"string"},"origin_country_code":{"type":"string","description":"The two-character ISO 3166-1 alpha-2 country code of the country where the user obtained the entitlement.\n This may be used to bypass geo-restrictions in certain conditions, e.g. when the user is traveling and is protected\n by EU regulations (https://europa.eu/youreurope/citizens/consumers/internet-telecoms/access-online-content-abroad/index_en.htm).\n If not provided, the entitlement will not be able to bypass geo-restrictions.","uniqueKey":"entitlement.origin_country_code","typeLabel":"string"}},"description":"Entitlements represent an end-users permission to access event or creative work content.","uniqueKey":"entitlement","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"entitlement":{"user_id":"\u003cstring>","project_id":"\u003cstring>","offer_id":"\u003cstring>","expiration_time":"2023-11-07T05:31:56Z","source_type":"\u003cstring>","source_id":"\u003cstring>","concurrency_limit":"\u003cstring>","origin_country_code":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"6caf9aeb-efd5-4e69-aa89-ee369bfb5fab":{"description":"Default error response","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"integer","description":"The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].","format":"int32","uniqueKey":"code","typeLabel":"integer\u003cint32>"},"message":{"type":"string","description":"A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.","uniqueKey":"message","typeLabel":"string"},"details":{"type":"array","items":{"type":"object","properties":{"@type":{"type":"string","description":"The type of the serialized message.","uniqueKey":"details.items.[INDEX].@type","typeLabel":"string"}},"additionalProperties":true,"description":"Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.","uniqueKey":"details.items.[INDEX]","typeLabel":"object"},"description":"A list of messages that carry the error details. There is a common set of message types for APIs to use.","uniqueKey":"details","typeLabel":"object[]"}},"description":"The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":123,"message":"\u003cstring>","details":[{"@type":"\u003cstring>"}]}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"98781b50-5b14-4e89-a1c5-ce732bba9b80":{"BearerAuth":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"BearerAuth"}}},"servers":{"3d936636-60f5-4659-a50d-e16fb1741a96":{"url":"https://api.mottostreaming.com","description":"Production server"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"BearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerAuth","name":"Authorization"}],"title":"BearerAuth"}]},"originalFileLocation":"https://api-docs.mottostreaming.com/openapi.yaml"},"subdomain":"motto","siteName":"Motto","title":"Upsert entitlement - Motto","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-19T10:30:38.222Z","originalFileLocation":"reference/studio-api/monetization/entitlements/v1/upsert-entitlement.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=\"system\"}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=\"description\" content=\"UpsertEntitlement Upserts a new entitlement or updates an existing entitlement. Note: If you wish to invalidate an existing entitlement, set the expires_at field to any moment in the past.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Motto\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/motto/jV0DsQq32_UALz8Z/_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/motto/jV0DsQq32_UALz8Z/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/motto/jV0DsQq32_UALz8Z/_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/motto/jV0DsQq32_UALz8Z/_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/motto/jV0DsQq32_UALz8Z/_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/motto/jV0DsQq32_UALz8Z/_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/motto/jV0DsQq32_UALz8Z/_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/motto/jV0DsQq32_UALz8Z/_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/motto/jV0DsQq32_UALz8Z/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Upsert entitlement - Motto\">\u003cmeta data-mint-head property=\"og:description\" content=\"UpsertEntitlement Upserts a new entitlement or updates an existing entitlement. Note: If you wish to invalidate an existing entitlement, set the expires_at field to any moment in the past.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Motto\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.mottostreaming.com/reference/studio-api/monetization/entitlements/v1/upsert-entitlement\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://motto.mintlify.app/_mintlify/api/og/v2?division=Entitlements\u0026amp;title=Upsert+entitlement\u0026amp;description=UpsertEntitlement%0A%0A+Upserts+a+new+entitlement+or+updates+an+existing+entitlement.%0A%0A+Note%3A+If+you+wish+to+invalidate+an+existing+entitlement%2C+set+the+%60expires_at\u0026amp;theme=fc161ab88cc1a6fe6bc74f6d\u0026amp;signature=8d123744a3be09674b531cc053d20a274c526a7a2ccd43f639fe839f4be95cf1\">\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=\"Upsert entitlement - Motto\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"UpsertEntitlement Upserts a new entitlement or updates an existing entitlement. Note: If you wish to invalidate an existing entitlement, set the expires_at field to any moment in the past.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://motto.mintlify.app/_mintlify/api/og/v2?division=Entitlements\u0026amp;title=Upsert+entitlement\u0026amp;description=UpsertEntitlement%0A%0A+Upserts+a+new+entitlement+or+updates+an+existing+entitlement.%0A%0A+Note%3A+If+you+wish+to+invalidate+an+existing+entitlement%2C+set+the+%60expires_at\u0026amp;theme=fc161ab88cc1a6fe6bc74f6d\u0026amp;signature=8d123744a3be09674b531cc053d20a274c526a7a2ccd43f639fe839f4be95cf1\">\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/motto/jV0DsQq32_UALz8Z/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Motto\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#a855f7\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.mottostreaming.com/reference/studio-api/monetization/entitlements/v1/upsert-entitlement\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/reference/studio-api/monetization/entitlements/v1/upsert-entitlement.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.mottostreaming.com/#organization\",\"name\":\"Motto\",\"url\":\"https://docs.mottostreaming.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/motto/cBpRj-PyqIlSlCJu/logo/light.png?fit=max\u0026auto=format\u0026n=cBpRj-PyqIlSlCJu\u0026q=85\u0026s=d4bd8dad415fff9053d11f4b5985ad6f\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.mottostreaming.com#website\",\"name\":\"Motto\",\"url\":\"https://docs.mottostreaming.com\",\"publisher\":{\"@id\":\"https://docs.mottostreaming.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.mottostreaming.com/reference/studio-api/monetization/entitlements/v1/upsert-entitlement#webpage\",\"url\":\"https://docs.mottostreaming.com/reference/studio-api/monetization/entitlements/v1/upsert-entitlement\",\"name\":\"Upsert entitlement\",\"description\":\"UpsertEntitlement Upserts a new entitlement or updates an existing entitlement. Note: If you wish to invalidate an existing entitlement, set the expires_at field to any moment in the past.\",\"dateModified\":\"2026-10-19T10:30:38.222Z\",\"isPartOf\":{\"@id\":\"https://docs.mottostreaming.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.mottostreaming.com/reference/studio-api/monetization/entitlements/v1/upsert-entitlement#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.mottostreaming.com/reference/studio-api/monetization/entitlements/v1/upsert-entitlement#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Studio API\",\"item\":\"https://docs.mottostreaming.com/reference/studio-api/introduction\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Monetization\",\"item\":\"https://docs.mottostreaming.com/reference/studio-api/monetization/transactions/v1/get-transaction\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Entitlements\",\"item\":\"https://docs.mottostreaming.com/reference/studio-api/monetization/entitlements/v1/list-entitlements\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Upsert entitlement\",\"item\":\"https://docs.mottostreaming.com/reference/studio-api/monetization/entitlements/v1/upsert-entitlement\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.mottostreaming.com/reference/studio-api/monetization/entitlements/v1/upsert-entitlement#apireference\",\"headline\":\"Upsert entitlement\",\"name\":\"Upsert entitlement\",\"description\":\"UpsertEntitlement Upserts a new entitlement or updates an existing entitlement. Note: If you wish to invalidate an existing entitlement, set the expires_at field to any moment in the past.\",\"url\":\"https://docs.mottostreaming.com/reference/studio-api/monetization/entitlements/v1/upsert-entitlement\",\"mainEntityOfPage\":{\"@id\":\"https://docs.mottostreaming.com/reference/studio-api/monetization/entitlements/v1/upsert-entitlement#webpage\"},\"dateModified\":\"2026-10-19T10:30:38.222Z\",\"publisher\":{\"@id\":\"https://docs.mottostreaming.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.mottostreaming.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Motto\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Motto","nav":{"global":{"anchors":[{"anchor":"GitHub","icon":"github","href":"https://github.com/MottoStreaming"}]},"tabs":[{"tab":"Documentation","groups":[{"group":"Get Started","pages":[{"title":"Your sports. Your streams. Your way.","sidebarTitle":"Overview","href":"/guides/introduction"}]},{"group":"Streaming","pages":[{"group":"Events","pages":[{"title":"Introduction","href":"/guides/streaming/events/introduction"},{"title":"Live streaming","href":"/guides/streaming/events/live-streaming"},{"title":"VOD","href":"/guides/streaming/events/vod"}]},{"group":"Video protection","pages":[{"title":"Video Protection","sidebarTitle":"Introduction","href":"/guides/streaming/video-protection/introduction"},{"title":"Geo-blocking","href":"/guides/streaming/video-protection/geo-blocking"},{"title":"DRM","href":"/guides/streaming/video-protection/drm"},{"title":"Hotlink prevention","href":"/guides/streaming/video-protection/hotlink-prevention"},{"title":"Domain pinning","href":"/guides/streaming/video-protection/domain-pinning"},{"title":"Registration walls","href":"/guides/streaming/video-protection/registration-walls"},{"title":"Concurrency control","href":"/guides/streaming/video-protection/concurrency-control"},{"title":"VPN blocking","href":"/guides/streaming/video-protection/vpn-blocking"},{"title":"Other","href":"/guides/streaming/video-protection/other"}]},{"group":"Configurations","pages":[{"title":"Introduction","href":"/guides/streaming/configurations/introduction"},{"title":"Transcoder settings","href":"/guides/streaming/configurations/transcoder-settings"}]},{"title":"Simulcasting","href":"/guides/streaming/simulcasting"},{"group":"Highlights","pages":[{"title":"Introduction","href":"/guides/streaming/highlights/introduction"},{"title":"Highlight clipping","sidebarTitle":"Clipping","href":"/guides/streaming/highlights/clipping"},{"title":"Stitching clips","sidebarTitle":"Stitching","href":"/guides/streaming/highlights/stitching"}]},{"title":"Channels","href":"/guides/streaming/channels"}]},{"group":"CMS","pages":[{"title":"Entities","href":"/guides/cms/entities"},{"title":"Sports standings","href":"/guides/cms/standings"},{"group":"Annotations","pages":[{"title":"Annotations","sidebarTitle":"Introduction","href":"/guides/annotations/annotations"},{"title":"Actions engine","href":"/guides/annotations/actions"}]},{"title":"AI agents","href":"/guides/annotations/ai-agent"}]},{"group":"OTT","pages":[{"title":"Introduction","href":"/guides/ott/introduction"},{"title":"Hero banners","href":"/guides/ott/hero-banners"},{"title":"Custom domain","href":"/guides/ott/custom-domain"},{"title":"Embed video player","href":"/guides/how-to/embed-our-player"}]},{"group":"Monetization","pages":[{"title":"Introduction","href":"/guides/monetization/introduction"},{"group":"PPV \u0026 Subscriptions","pages":[{"group":"Offers","pages":[{"title":"Offers","sidebarTitle":"Introduction","href":"/guides/monetization/offers/introduction"},{"title":"Stripe","href":"/guides/monetization/offers/stripe"}]},{"title":"Transactions","href":"/guides/monetization/transactions/introduction"}]},{"group":"Video advertising","pages":[{"title":"Video ads","href":"/guides/monetization/ads/video-ads"}]}]},{"group":"Assets","pages":[{"title":"Introduction","href":"/guides/assets/introduction"},{"title":"Video asset uploads","sidebarTitle":"Video uploads","href":"/guides/assets/video-upload"},{"title":"Video asset downloads","sidebarTitle":"Video downloads","href":"/guides/assets/video-download"},{"title":"Manage images","sidebarTitle":"Images","href":"/guides/assets/images"}]},{"group":"IAM","pages":[{"title":"Manage accounts","sidebarTitle":"Manage","href":"/guides/iam/manage"}]}]},{"tab":"API Reference","groups":[{"group":"Get Started","pages":[{"title":"API Reference","sidebarTitle":"Overview","href":"/reference/overview"}]},{"group":"Studio API","pages":[{"title":"Introduction","href":"/reference/studio-api/introduction"},{"group":"Streaming","expanded":true,"pages":[{"group":"Live Streams","pages":[{"openapi":"get /streaming/live_streams/v2/{live_stream_id}","title":null,"href":"/reference/studio-api/streaming/live-streams/v2/get-live-stream"},{"openapi":"get /streaming/live_streams/v2","title":null,"href":"/reference/studio-api/streaming/live-streams/v2/list-live-streams"},{"openapi":"post /streaming/live_streams/v2","title":null,"href":"/reference/studio-api/streaming/live-streams/v2/create-live-stream"},{"openapi":"patch /streaming/live_streams/v2/{live_stream_id}","title":null,"href":"/reference/studio-api/streaming/live-streams/v2/update-live-stream"},{"openapi":"delete /streaming/live_streams/v2/{live_stream_id}","title":null,"href":"/reference/studio-api/streaming/live-streams/v2/delete-live-stream"},{"group":"Ingests","pages":[{"openapi":"get /streaming/ingests/v2/{ingest_id}","title":null,"href":"/reference/studio-api/streaming/ingests/v2/get-ingest"},{"openapi":"get /streaming/ingests/v2","title":null,"href":"/reference/studio-api/streaming/ingests/v2/list-ingests"},{"openapi":"post /streaming/ingests/v2","title":null,"href":"/reference/studio-api/streaming/ingests/v2/create-ingest"},{"openapi":"patch /streaming/ingests/v2/{ingest_id}","title":null,"href":"/reference/studio-api/streaming/ingests/v2/update-ingest"},{"openapi":"delete /streaming/ingests/v2/{ingest_id}","title":null,"href":"/reference/studio-api/streaming/ingests/v2/delete-ingest"},{"openapi":"get /streaming/ingest_servers/v2","title":null,"href":"/reference/studio-api/streaming/ingest-servers/v2/list-ingest-servers"},{"openapi":"post /streaming/ingests/v2/{ingest_id}/pull","title":null,"href":"/reference/studio-api/streaming/ingests/v2/start-pull"},{"openapi":"post /streaming/ingests/v2/{ingest_id}/disconnect","title":null,"href":"/reference/studio-api/streaming/ingests/v2/disconnect"}]}]},{"group":"Clips","pages":[{"openapi":"get /streaming/clips/v1/{clip_id}","title":null,"href":"/reference/studio-api/streaming/clips/v1/get-clip"},{"openapi":"post /streaming/clips/v1","title":null,"href":"/reference/studio-api/streaming/clips/v1/create-clip"},{"openapi":"get /streaming/stitchers/v1/{stitcher_id}","title":null,"href":"/reference/studio-api/streaming/stitchers/v1/get-stitcher"},{"openapi":"post /streaming/stitchers/v1","title":null,"href":"/reference/studio-api/streaming/stitchers/v1/create-stitcher"}]},{"group":"Videos","pages":[{"openapi":"get /streaming/videos/v1/{video_id}","title":null,"href":"/reference/studio-api/streaming/videos/v1/get-video"},{"openapi":"get /streaming/videos/v1","title":null,"href":"/reference/studio-api/streaming/videos/v1/list-videos"},{"openapi":"patch /streaming/videos/v1/{video_id}","title":null,"href":"/reference/studio-api/streaming/videos/v1/update-video"},{"openapi":"delete /streaming/videos/v1/{video_id}","title":null,"href":"/reference/studio-api/streaming/videos/v1/delete-video"},{"group":"Playlists","pages":[{"openapi":"get /streaming/playlists/v1/{playlist_id}","title":null,"href":"/reference/studio-api/streaming/playlists/v1/get-playlist"},{"openapi":"patch /streaming/playlists/v1/{playlist_id}","title":null,"href":"/reference/studio-api/streaming/playlists/v1/update-playlist"}]}]},{"group":"Video Protection","pages":[{"openapi":"get /streaming/video_protection/v2/rulesets/{video_protection_ruleset_id}","title":null,"href":"/reference/studio-api/streaming/video-protection/v2/get-ruleset"},{"openapi":"get /streaming/video_protection/v2/rulesets","title":null,"href":"/reference/studio-api/streaming/video-protection/v2/list-rulesets"},{"openapi":"post /streaming/video_protection/v2/rulesets","title":null,"href":"/reference/studio-api/streaming/video-protection/v2/create-ruleset"},{"openapi":"patch /streaming/video_protection/v2/rulesets/{video_protection_ruleset_id}","title":null,"href":"/reference/studio-api/streaming/video-protection/v2/update-ruleset"},{"openapi":"delete /streaming/video_protection/v2/rulesets/{video_protection_ruleset_id}","title":null,"href":"/reference/studio-api/streaming/video-protection/v2/delete-ruleset"}]},{"group":"Subtitles","pages":[{"openapi":"post /streaming/subtitle_tracks/v1","title":null,"href":"/reference/studio-api/streaming/subtitle-tracks/v1/create-subtitle-track"},{"openapi":"delete /streaming/subtitle_tracks/v1/{track_id}","title":null,"href":"/reference/studio-api/streaming/subtitle-tracks/v1/delete-subtitle-track"},{"openapi":"get /streaming/subtitle_tracks/v1","title":null,"href":"/reference/studio-api/streaming/subtitle-tracks/v1/list-subtitle-tracks"}]},{"group":"Assets","pages":[{"openapi":"get /streaming/assets/v1/{asset_id}","title":null,"href":"/reference/studio-api/streaming/assets/v1/get-asset"},{"openapi":"get /streaming/assets/v1/{asset_id}/url","title":null,"href":"/reference/studio-api/streaming/assets/v1/get-asset-url"},{"openapi":"get /streaming/assets/v1","title":null,"href":"/reference/studio-api/streaming/assets/v1/list-assets"},{"openapi":"post /streaming/uploads/v1","title":null,"href":"/reference/studio-api/streaming/uploads/v1/create-upload"},{"openapi":"post /streaming/assets/v1/{asset_id}/labels","title":null,"href":"/reference/studio-api/streaming/assets/v1/set-asset-labels"},{"openapi":"delete /streaming/assets/v1/{asset_id}","title":null,"href":"/reference/studio-api/streaming/assets/v1/delete-asset"},{"group":"VOD Uploads","pages":[{"openapi":"get /streaming/vods/v2/{vod_id}","title":null,"href":"/reference/studio-api/streaming/vods/v2/get-vod"},{"openapi":"get /streaming/vods/v2","title":null,"href":"/reference/studio-api/streaming/vods/v2/list-vods"},{"openapi":"post /streaming/vods/v2","title":null,"href":"/reference/studio-api/streaming/vods/v2/create-vod"},{"openapi":"post /streaming/vods/v2/{vod_id}/start_processing","title":null,"href":"/reference/studio-api/streaming/vods/v2/process-vod"},{"openapi":"patch /streaming/vods/v2/{vod_id}","title":null,"href":"/reference/studio-api/streaming/vods/v2/update-vod"},{"openapi":"delete /streaming/vods/v2/{vod_id}","title":null,"href":"/reference/studio-api/streaming/vods/v2/delete-vod"}]}]},{"group":"Spiideo (AI cameras)","pages":[{"openapi":"get /integration/spiideo/v1/entity_mappings","title":null,"href":"/reference/studio-api/integration/spiideo/v1/list-entity-mappings"},{"openapi":"post /integration/spiideo/v1/entity_mappings","title":null,"href":"/reference/studio-api/integration/spiideo/v1/create-entity-mapping"},{"openapi":"delete /integration/spiideo/v1/entity_mappings/{entity_id}","title":null,"href":"/reference/studio-api/integration/spiideo/v1/delete-entity-mapping"},{"openapi":"get /integration/spiideo/v1/event_mappings/batch","title":null,"href":"/reference/studio-api/integration/spiideo/v1/batch-get-event-mappings"}]}]},{"group":"CMS","pages":[{"group":"Events","pages":[{"openapi":"get /cms/events/v1/{event_id}","title":null,"href":"/reference/studio-api/cms/events/v1/get-event"},{"openapi":"get /cms/events/v1","title":null,"href":"/reference/studio-api/cms/events/v1/list-events"},{"openapi":"post /cms/events/v1","title":null,"href":"/reference/studio-api/cms/events/v1/create-event"},{"openapi":"post /cms/events/v1/{event_id}/duplicate","title":null,"href":"/reference/studio-api/cms/events/v1/duplicate-event"},{"openapi":"patch /cms/events/v1/{event_id}","title":null,"href":"/reference/studio-api/cms/events/v1/update-event"},{"openapi":"delete /cms/events/v1/{event_id}","title":null,"href":"/reference/studio-api/cms/events/v1/delete-event"}]},{"group":"Creative Works","pages":[{"openapi":"get /cms/creative_works/v1/{creative_work_id}","title":null,"href":"/reference/studio-api/cms/creative-works/v1/get-creative-work"},{"openapi":"get /cms/creative_works/v1","title":null,"href":"/reference/studio-api/cms/creative-works/v1/list-creative-works"},{"openapi":"post /cms/creative_works/v1","title":null,"href":"/reference/studio-api/cms/creative-works/v1/create-creative-work"},{"openapi":"patch /cms/creative_works/v1/{creative_work_id}","title":null,"href":"/reference/studio-api/cms/creative-works/v1/update-creative-work"},{"openapi":"delete /cms/creative_works/v1/{creative_work_id}","title":null,"href":"/reference/studio-api/cms/creative-works/v1/delete-creative-work"}]},{"group":"Entities","pages":[{"openapi":"get /cms/entities/v1/{entity_id}","title":null,"href":"/reference/studio-api/cms/entities/v1/get-entity"},{"openapi":"get /cms/entities/v1","title":null,"href":"/reference/studio-api/cms/entities/v1/list-entities"},{"openapi":"post /cms/entities/v1","title":null,"href":"/reference/studio-api/cms/entities/v1/create-entity"},{"openapi":"patch /cms/entities/v1/{entity_id}","title":null,"href":"/reference/studio-api/cms/entities/v1/update-entity"},{"openapi":"delete /cms/entities/v1/{entity_id}","title":null,"href":"/reference/studio-api/cms/entities/v1/delete-entity"}]},{"group":"Annotations","pages":[{"openapi":"get /annotations/annotations/v1/{annotation_id}","title":null,"href":"/reference/studio-api/annotations/annotations/v1/get-annotation"},{"openapi":"get /annotations/annotations/v1","title":null,"href":"/reference/studio-api/annotations/annotations/v1/list-annotations"},{"openapi":"post /annotations/annotations/v1","title":null,"href":"/reference/studio-api/annotations/annotations/v1/create-annotation"},{"openapi":"patch /annotations/annotations/v1/{annotation_id}","title":null,"href":"/reference/studio-api/annotations/annotations/v1/update-annotation"},{"openapi":"delete /annotations/annotations/v1/{annotation_id}","title":null,"href":"/reference/studio-api/annotations/annotations/v1/delete-annotation"}]},{"group":"Sports Standings","pages":[{"openapi":"get /cms/standings/v1/{standing_id}","title":null,"href":"/reference/studio-api/cms/standings/v1/get-standing"},{"openapi":"get /cms/standings/v1","title":null,"href":"/reference/studio-api/cms/standings/v1/list-standings"},{"openapi":"post /cms/standings/v1","title":null,"href":"/reference/studio-api/cms/standings/v1/create-standing"},{"openapi":"patch /cms/standings/v1/{standing_id}","title":null,"href":"/reference/studio-api/cms/standings/v1/update-standing"},{"openapi":"delete /cms/standings/v1/{standing_id}","title":null,"href":"/reference/studio-api/cms/standings/v1/delete-standing"},{"openapi":"get /cms/standing_phases/v1/{standing_phase_id}","title":null,"href":"/reference/studio-api/cms/standing-phases/v1/get-standing-phase"},{"openapi":"get /cms/standing_phases/v1/batch","title":null,"href":"/reference/studio-api/cms/standing-phases/v1/batch-get-standing-phases"},{"openapi":"post /cms/standing_phases/v1","title":null,"href":"/reference/studio-api/cms/standing-phases/v1/create-standing-phase"},{"openapi":"patch /cms/standing_phases/v1/{standing_phase_id}","title":null,"href":"/reference/studio-api/cms/standing-phases/v1/update-standing-phase"},{"openapi":"delete /cms/standing_phases/v1/{standing_phase_id}","title":null,"href":"/reference/studio-api/cms/standing-phases/v1/delete-standing-phase"}]}]},{"group":"Monetization","pages":[{"group":"Transactions","pages":[{"openapi":"get /monetization/transactions/v1/{transaction_id}","title":null,"href":"/reference/studio-api/monetization/transactions/v1/get-transaction"},{"openapi":"get /monetization/transactions/v1","title":null,"href":"/reference/studio-api/monetization/transactions/v1/list-transactions"}]},{"group":"Entitlements","pages":[{"openapi":"get /monetization/entitlements/v1","title":null,"description":"ListEntitlements\n\n Returns list of entitlements based on specified parameters.","href":"/reference/studio-api/monetization/entitlements/v1/list-entitlements"},{"openapi":"post /monetization/entitlements/v1","title":null,"href":"/reference/studio-api/monetization/entitlements/v1/upsert-entitlement"}]}]},{"group":"IAM","pages":[{"group":"Accounts","pages":[{"title":"Introduction","description":"Accounts in Motto","href":"/reference/studio-api/iam/accounts/introduction"},{"openapi":"post /iam/auth/v1/tokens","title":null,"href":"/reference/studio-api/iam/auth/v1/create-token"}]},{"group":"Users","pages":[{"title":"Introduction","href":"/reference/studio-api/iam/users/introduction"},{"openapi":"get /iam/users/v1/{user_id}","title":null,"href":"/reference/studio-api/iam/users/v1/get-user"},{"openapi":"get /iam/users/v1","title":null,"href":"/reference/studio-api/iam/users/v1/list-users"},{"openapi":"patch /iam/users/v1/{user_id}","title":null,"href":"/reference/studio-api/iam/users/v1/update-user"},{"openapi":"delete /iam/users/v1/{user_id}","title":null,"href":"/reference/studio-api/iam/users/v1/delete-user"},{"openapi":"post /iam/users/v1/{user_id}/token","title":null,"href":"/reference/studio-api/iam/users/v1/create-user-token"}]},{"group":"Organizations","pages":[{"openapi":"get /iam/organizations/v1/{org_id}","title":null,"href":"/reference/studio-api/iam/organizations/v1/get-organization"},{"openapi":"get /iam/organizations/v1","title":null,"href":"/reference/studio-api/iam/organizations/v1/list-organizations"}]},{"group":"Projects","pages":[{"openapi":"get /iam/projects/v1/{project_id}","title":null,"href":"/reference/studio-api/iam/projects/v1/get-project"},{"openapi":"get /iam/projects/v1","title":null,"href":"/reference/studio-api/iam/projects/v1/list-projects"},{"openapi":"patch /iam/projects/v1/{project_id}","title":null,"href":"/reference/studio-api/iam/projects/v1/update-project"}]}]},{"group":"Integration","pages":[{"group":"Callbacks","pages":[{"openapi":"get /integration/topics/v1","title":null,"href":"/reference/studio-api/integration/topics/v1/list-topics"},{"openapi":"post /integration/subscriptions/v1","title":null,"href":"/reference/studio-api/integration/subscriptions/v1/create-subscription"},{"openapi":"delete /integration/subscriptions/v1/{subscription_id}","title":null,"href":"/reference/studio-api/integration/subscriptions/v1/delete-subscription"},{"openapi":"get /integration/subscriptions/v1/{subscription_id}","title":null,"href":"/reference/studio-api/integration/subscriptions/v1/get-subscription"},{"openapi":"get /integration/subscriptions/v1","title":null,"href":"/reference/studio-api/integration/subscriptions/v1/list-subscriptions"},{"openapi":"patch /integration/subscriptions/v1/{subscription_id}","title":null,"href":"/reference/studio-api/integration/subscriptions/v1/update-subscription"}]}]}]},{"group":"Agentic SDK","pages":[{"title":"Agentic SDK","sidebarTitle":"Introduction","href":"/reference/agentic-sdk/introduction"}]}]}]},"basePath":"","title":"Upsert entitlement - Motto","buildId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","deploymentId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DCDCdBVX.js","utils-ME8dDnLe.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-0e84ACsd.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-wgRBj-ia.js","snippetPresets-C11Sgb-o.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-C0lapOpP.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-ZeRQV8fF.js","shallow-BupWh095.js","getApiPlaygroundDisplay-BnYQO2Ss.js","CodeSnippet-RKKOc8c_.js","CodeSnippets-Drf_m8wS.js","Page-Bevw23-4.js","getPastedJson-u6QiPzNZ.js","icon-Bb-CBSxO.js","MethodPill-F7l5AI7V.js","DuplicateIcon-IiAXkdSg.js","createIcon-FliI8EBc.js","DynamicMarkdown-B62XqCSI.js","SectionHeading-Dj31pT03.js","axios-vUo_bRtp.js","Markdown-BOgQCTwD.js","clsx-BIWXJmsZ.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-DKZWslLH.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-UDqbR6xh.js"]}