Reseller partner keys (admin or messaging) only, with Blujay-Workspace. Returns a single-use URL for the embedded messaging view, acting as one of the customer’s teammates, either on one conversation (thread) or on the customer’s whole inbox (inbox). The URL works once and only for 60 seconds, so create it when the page that shows it loads, and never log, store or share it. Only the page at parent_origin can frame it. Any other credential gets 404. See the partner embed guide for framing and the view’s messages.
Your workspace API key, sent as Authorization: Bearer blu_.... Workspace admins can find it in the Blujay app under API.
An API key has full access to your workspace and works on every endpoint. There is no test mode: every key sends real messages and changes real data, so keep it secret and use it only from your server.
Each API key can make 600 read requests and 120 write requests per minute, plus 60 attachment requests per minute. Over a limit you get 429 RATE_LIMIT_EXCEEDED with Retry-After.
Reseller partner keys. A partner key acts for one of the partner's customers when the request names it in the Blujay-Workspace header (the customer's workspace_ ID). Without the header it reaches only /v1/partner/* and /v1/me. Each customer gets the limits above for each partner key, and all of a partner's requests together get ten times those limits; a 429 says which in error.details[0].scope (partner_customer or partner). A messaging key can read anything for a customer and change chats, messages, contacts, attachments and vCards; everything else needs an admin key (403 PARTNER_ROLE_FORBIDDEN). Paused or closing customers can be read but not changed (409 CUSTOMER_PAUSED or CUSTOMER_CLOSING). Any other workspace ID in the header returns 404 NOT_FOUND; using the header with any other credential returns 400 WORKSPACE_HEADER_NOT_ALLOWED.
Your X-Request-ID header value, echoed back when you send one. Not included on the send responses (POST /v1/chats and POST /v1/chats/{chat_id}/messages); keep your own mapping from your request ID to the returned message ID there.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Blujay API","description":"Send and receive iMessage, RCS and SMS from your Blujay phone numbers with the Blujay API.","colors":{"primary":"#007AFF","light":"#4DA3FF","dark":"#007AFF"},"logo":{"light":"https://mintcdn.com/blujay-api/Z06BDuKbaRqwvTNY/logo/light.svg?fit=max\u0026auto=format\u0026n=Z06BDuKbaRqwvTNY\u0026q=85\u0026s=7e2d044d91197ee37ad1e32cf7c89936","dark":"https://mintcdn.com/blujay-api/Z06BDuKbaRqwvTNY/logo/dark.svg?fit=max\u0026auto=format\u0026n=Z06BDuKbaRqwvTNY\u0026q=85\u0026s=d5a73c28432c5541ee1c48a16175a845","href":"https://docs.blujay.io"},"favicon":"https://mintcdn.com/blujay-api/Z06BDuKbaRqwvTNY/favicon.png?fit=max\u0026auto=format\u0026n=Z06BDuKbaRqwvTNY\u0026q=85\u0026s=52b83434892a2ee20969e9f587e906c2","api":{"openapi":"api-reference/openapi.yaml","playground":{"display":"interactive"},"examples":{"defaults":"all","languages":["curl","javascript","python","go","ruby","php"]}},"background":{"color":{"dark":"#141414"}},"navbar":{"links":[{"href":"mailto:support@blujay.io","label":"Support"}],"primary":{"type":"button","label":"Sign up free","href":"https://app.blujay.io/?auth=register"}},"footer":{"socials":{"x":"https://x.com/blujayio","website":"https://blujay.io"},"links":[{"header":"Blujay","items":[{"label":"Help center","href":"https://support.blujay.io"},{"label":"Open Blujay","href":"https://app.blujay.io"}]}]},"fonts":{"family":"Geist"},"contextual":{"options":["copy","view","chatgpt","claude","cursor","mcp"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"blujay-api","hasAudioNarration":false,"actualSubdomain":"blujay-api","customDomains":["docs.blujay.io"],"gitSource":{"type":"github","owner":"blujayhq","repo":"api-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":"","_id":"6ada546d4fd5aea585776e0c"},"entitlements":{},"buildId":"6af3f64c47adc41223f29755","clientVersion":"0.0.4102","searchFilterCounts":[{"language":"default","tag":"API reference","count":150},{"language":"default","tag":"Guides","count":92},{"language":"default","tag":"Errors","count":84},{"language":"default","tag":"Endpoints","count":65},{"language":"default","tag":"Contacts","count":21},{"language":"default","tag":"Messages","count":21},{"language":"default","tag":"Webhooks","count":20},{"language":"default","tag":"Chats","count":17},{"language":"default","tag":"Reseller partners","count":11},{"language":"default","tag":"Sending messages","count":11}]},"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":"custom-rbac-roles","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":"rbac-expansion","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":"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":"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":"editor-metadata","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},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"html:not(.dark) h1,html:not(.dark) h2,html:not(.dark) h3{color:#0A2540}html:not(.dark) .prose{color:#425466}#navigation-items a,#navigation-items .sidebar-group>li>button{padding-top:4px;padding-bottom:4px}#navigation-items>div:has(>.sidebar-group-header){margin-top:1.25rem}#navigation-items>div:first-child:has(>.sidebar-group-header){margin-top:0}#navigation-items .sidebar-group-header{margin-bottom:0.375rem}#navigation-items>div:only-of-type>.sidebar-group-header{display:none}#navigation-items>div:only-of-type>.sidebar-group>li+li{margin-top:0}#navigation-items>div:only-of-type>.sidebar-group>li>button{font-weight:500}#navigation-items>div:only-of-type>.sidebar-group>li>button,#navigation-items>div:only-of-type a:not([aria-current=\"page\"]),#navigation-items>div:only-of-type a:not([aria-current=\"page\"]):hover{color:#0A2540}.dark #navigation-items>div:only-of-type>.sidebar-group>li>button,.dark #navigation-items>div:only-of-type a:not([aria-current=\"page\"]),.dark #navigation-items>div:only-of-type a:not([aria-current=\"page\"]):hover{color:#fff}#navigation-items>div:only-of-type>.sidebar-group>li>ul{margin-left:1rem;padding-left:0;margin-top:0;border-left:1px solid rgb(0 0 0 / 0.14)}#navigation-items>div:only-of-type>.sidebar-group>li>ul a{padding-left:12px!important}.dark #navigation-items>div:only-of-type>.sidebar-group>li>ul{border-left-color:rgb(255 255 255 / 0.2)}#page-title{font-size:42px;line-height:1.2;font-weight:500;letter-spacing:-0.03em}#header .prose{font-size:20px;line-height:28px;letter-spacing:-0.02em}.dark #header .prose{color:rgb(255 255 255 / 0.8)}.dark #page-title{color:#fff}#content{line-height:24px;letter-spacing:-0.01em}.dark #content{color:rgb(255 255 255 / 0.8)}#content h2:not([data-component-part=\"card-title\"]){font-size:35px;line-height:42px;font-weight:500;letter-spacing:-0.03em;margin-top:48px;margin-bottom:15px}#content h3:not([data-component-part=\"card-title\"]){font-size:24px;line-height:32px;font-weight:500;letter-spacing:-0.02em;margin-top:32px;margin-bottom:12px}#content p{margin-top:16px;margin-bottom:0}#content ul,#content ol{margin-top:16px;margin-bottom:0}#content li{margin-top:0;margin-bottom:0}#content table{font-size:15px;line-height:22.5px}#content .callout{border-radius:8px;padding:14px 16px}#content .callout>.prose{font-size:16px;line-height:24px}.dark #content .callout>.prose{color:rgb(255 255 255 / 0.85)}html:not(.dark) #content .callout>.prose{color:#425466}#content .callout[class*=\"border-green\"]{background:rgb(0 122 255 / 0.05);border-color:rgb(0 122 255 / 0.25)}#content .callout[class*=\"border-green\"] svg{color:#007AFF;fill:currentColor}#content ul{padding-left:0;list-style:none}#content ul>li{margin-left:-6px}#content li+li{margin-top:8px}#content ul>li::before{content:\"\";position:absolute;width:5px;height:5px;border-radius:50%;left:15px;top:9.5px;background-color:#425466}.dark #content ul>li::before{background-color:rgb(255 255 255 / 0.8)}#content h2+*,#content h3+*{margin-top:0}#content a.link{color:#007AFF;font-weight:400;border-bottom:0;text-decoration:underline;text-decoration-color:rgb(0 122 255 / 0.4);text-underline-offset:auto}.dark #content a.link{color:#4DA3FF;text-decoration-color:rgb(77 163 255 / 0.4)}.dark #content strong{color:#fff;font-weight:700}"}],"page":{"pagePath":"api-reference/partners/create-an-embedded-view-url","slug":"/api-reference/partners/create-an-embedded-view-url","pageMetadata":{"title":"Create an embedded view URL","description":"Reseller partner keys (`admin` or `messaging`) only, with `Blujay-Workspace`. Returns a single-use URL for the embedded messaging view, acting as one of the customer's teammates, either on one conversation (`thread`) or on the customer's whole inbox (`inbox`). The URL works once and only for 60 seconds, so create it when the page that shows it loads, and never log, store or share it. Only the page at `parent_origin` can frame it. Any other credential gets `404`. See the partner embed guide for framing and the view's messages.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/embed/sessions","href":"/api-reference/partners/create-an-embedded-view-url","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {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(_components.p, {\n children: [\"Reseller partner keys (\", _jsx(_components.code, {\n children: \"admin\"\n }), \" or \", _jsx(_components.code, {\n children: \"messaging\"\n }), \") only, with \", _jsx(_components.code, {\n children: \"Blujay-Workspace\"\n }), \". Returns a single-use URL for the embedded messaging view, acting as one of the customer’s teammates, either on one conversation (\", _jsx(_components.code, {\n children: \"thread\"\n }), \") or on the customer’s whole inbox (\", _jsx(_components.code, {\n children: \"inbox\"\n }), \"). The URL works once and only for 60 seconds, so create it when the page that shows it loads, and never log, store or share it. Only the page at \", _jsx(_components.code, {\n children: \"parent_origin\"\n }), \" can frame it. Any other credential gets \", _jsx(_components.code, {\n children: \"404\"\n }), \". See the partner embed guide for framing and the view’s messages.\"]\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":{"title":"Create an embedded view URL","description":"Reseller partner keys (`admin` or `messaging`) only, with `Blujay-Workspace`. Returns a single-use URL for the embedded messaging view, acting as one of the customer's teammates, either on one conversation (`thread`) or on the customer's whole inbox (`inbox`). The URL works once and only for 60 seconds, so create it when the page that shows it loads, and never log, store or share it. Only the page at `parent_origin` can frame it. Any other credential gets `404`. See the partner embed guide for framing and the view's messages.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/embed/sessions","href":"/api-reference/partners/create-an-embedded-view-url","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Partners"],"summary":"Create an embedded view URL","description":"Reseller partner keys (`admin` or `messaging`) only, with `Blujay-Workspace`. Returns a single-use URL for the embedded messaging view, acting as one of the customer's teammates, either on one conversation (`thread`) or on the customer's whole inbox (`inbox`). The URL works once and only for 60 seconds, so create it when the page that shows it loads, and never log, store or share it. Only the page at `parent_origin` can frame it. Any other credential gets `404`. See the partner embed guide for framing and the view's messages.","operationId":"createPartnerEmbedSession","x-hidden":true,"parameters":["ea92a97f-1937-44fb-9627-fbcb686f2e68"],"requestBody":"58eaa5bb-902f-4921-b464-c232be02b2c9","responses":{"201":"555eb517-7f52-418f-9d93-3e4588df306e","400":"8e36195e-5b6d-4890-aa6b-3bbc5061cc30","401":"dc6db065-63ef-458b-9116-3a91ef20dbc4","404":"1565403f-a1ef-4315-abbb-9bd4e48aa280","409":"8f24b7eb-c682-42e1-93a5-fa86f9107279","503":"89318690-a847-432e-94f5-44f81df2d567"},"security":["caadd39d-cc17-4abd-813e-c1d7112cec2f"],"method":"post","type":"path","servers":["660565a7-87d9-4b09-af2e-872548a05c9e"],"path":"/v1/embed/sessions","baseUrlOptions":["https://api.blujay.io"],"title":"Create an embedded view URL","codeSamples":[],"requestExampleLanguages":["bash","javascript","python","go","ruby","php"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"ea92a97f-1937-44fb-9627-fbcb686f2e68":{"name":"Blujay-Workspace","in":"header","required":false,"schema":{"type":"string","examples":["workspace_abc123"],"pattern":"^workspace_[A-Za-z0-9_-]+$","isRequired":false,"description":"Reseller partner keys only. The `workspace_` ID of one of your customers; the request runs as that customer.","uniqueKey":"","typeLabel":"string"},"description":"Reseller partner keys only. The `workspace_` ID of one of your customers; the request runs as that customer."}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["team_member_id","mode","parent_origin"],"description":"`thread` mode needs exactly one of `phone_number` or `chat_id`; `inbox` mode takes neither.","properties":{"team_member_id":{"type":"string","minLength":1,"maxLength":200,"description":"An active teammate of the customer, from `POST /v1/team-members`. The view acts as this teammate.","isRequired":true,"uniqueKey":"team_member_id","typeLabel":"string"},"mode":{"type":"string","enum":["thread","inbox"],"description":"`thread` shows one conversation; `inbox` shows the customer's whole inbox with the assignee filter.","isRequired":true,"uniqueKey":"mode","typeLabel":"enum\u003cstring>"},"parent_origin":{"type":"string","minLength":1,"maxLength":255,"examples":["https://app.yourproduct.com"],"description":"The exact origin of the page that will frame the view; one of your registered framing origins.","isRequired":true,"uniqueKey":"parent_origin","typeLabel":"string"},"phone_number":{"type":"string","minLength":1,"maxLength":64,"examples":["+14805550101"],"description":"Thread mode only. A US number, with or without a contact yet.","uniqueKey":"phone_number","typeLabel":"string"},"chat_id":{"type":"string","minLength":1,"maxLength":200,"description":"Thread mode only. A direct or group chat of the customer.","uniqueKey":"chat_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"team_member_id":"\u003cstring>","parent_origin":"https://app.yourproduct.com","phone_number":"+14805550101","chat_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"555eb517-7f52-418f-9d93-3e4588df306e":{"description":"The view URL was created.","headers":{"X-Trace-ID":{"description":"Unique ID for this request. It matches `trace_id` in the body. Include it when you contact Blujay support.","schema":{"type":"string","examples":["trc_8f2a1c0e4b7d"],"pattern":"^trc_[A-Za-z0-9_-]+$"}}},"content":{"application/json":{"schema":{"type":"object","description":"Wraps every successful response. The result is in `data`.","required":["data","status","trace_id","timestamp"],"properties":{"status":{"type":"string","enum":["success"],"isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"trace_id":{"type":"string","examples":["trc_8f2a1c0e4b7d"],"pattern":"^trc_[A-Za-z0-9_-]+$","isRequired":true,"uniqueKey":"trace_id","typeLabel":"string"},"timestamp":{"type":"string","examples":["2026-10-14T17:01:00.000Z"],"format":"date-time","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"data":{"type":"object","additionalProperties":false,"required":["url","expires_at"],"properties":{"url":{"type":"string","format":"uri","description":"The single-use view URL. Frame it from `parent_origin`; never log, store or share it.","isRequired":true,"uniqueKey":"data.url","typeLabel":"string\u003curi>"},"expires_at":{"type":"string","format":"date-time","description":"When the URL stops working (60 seconds after it was created).","isRequired":true,"uniqueKey":"data.expires_at","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"data","typeLabel":"object"},"client_request_id":{"type":"string","description":"Your `X-Request-ID` header value, echoed back when you send one. Not included on the send responses (`POST /v1/chats` and `POST /v1/chats/{chat_id}/messages`); keep your own mapping from your request ID to the returned message ID there.","uniqueKey":"client_request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":"success","trace_id":"trc_8f2a1c0e4b7d","timestamp":"2026-10-14T17:01:00.000Z","data":{"url":"\u003cstring>","expires_at":"2023-11-07T05:31:56Z"},"client_request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"8e36195e-5b6d-4890-aa6b-3bbc5061cc30":{"description":"`parent_origin` is not one of your registered framing origins (`EMBED_PARENT_ORIGIN_NOT_REGISTERED`), the mode and conversation don't match (`VALIDATION_ERROR`), or the header is missing (`WORKSPACE_HEADER_REQUIRED`).","headers":{"X-Trace-ID":{"description":"Unique ID for this request. It matches `trace_id` in the body. Include it when you contact Blujay support.","schema":{"type":"string","examples":["trc_8f2a1c0e4b7d"],"pattern":"^trc_[A-Za-z0-9_-]+$"}}},"content":{"application/json":{"schema":{"type":"object","description":"Wraps every error response. Branch on `error.code`, and include `trace_id` when you contact support.","required":["status","error","trace_id","timestamp"],"properties":{"status":{"const":"error","isRequired":true,"uniqueKey":"status","typeLabel":"any"},"error":{"type":"object","required":["code","message","type","http_status","retryable","doc_url","details"],"properties":{"code":{"type":"string","description":"Stable, machine-readable error code. Branch on this value.","examples":["RATE_LIMIT_EXCEEDED","QUEUE_UNAVAILABLE","FEATURE_NOT_ENABLED"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable explanation. It can change, so don't parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"type":{"type":"string","description":"Broad error category.","examples":["validation","auth","idempotency","rate_limit","queue","feature_gate"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"http_status":{"type":"integer","description":"The HTTP status code of the response.","enum":[400,401,403,404,409,413,415,422,429,500,502,503],"isRequired":true,"uniqueKey":"error.http_status","typeLabel":"enum\u003cinteger>"},"retryable":{"type":"boolean","description":"Whether sending the same request again later can succeed.","isRequired":true,"uniqueKey":"error.retryable","typeLabel":"boolean"},"doc_url":{"type":"string","format":"uri","description":"Link to documentation for this error code.","isRequired":true,"uniqueKey":"error.doc_url","typeLabel":"string\u003curi>"},"details":{"type":"array","description":"Extra structured context, such as the fields that failed validation or the limit you hit.","items":{"type":"object","additionalProperties":true,"uniqueKey":"error.details.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"error.details","typeLabel":"object[]"},"retry_after":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Also sent as the `Retry-After` header.","uniqueKey":"error.retry_after","typeLabel":"integer"},"reset_at":{"type":"string","examples":["2026-10-14T17:01:00.000Z"],"format":"date-time","description":"When the limit you hit resets.","uniqueKey":"error.reset_at","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"trace_id":{"type":"string","examples":["trc_8f2a1c0e4b7d"],"pattern":"^trc_[A-Za-z0-9_-]+$","isRequired":true,"uniqueKey":"trace_id","typeLabel":"string"},"timestamp":{"type":"string","examples":["2026-10-14T17:01:00.000Z"],"format":"date-time","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"client_request_id":{"type":"string","description":"Your `X-Request-ID` header value, echoed back when you send one.","uniqueKey":"client_request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":"error","error":{"code":"RATE_LIMIT_EXCEEDED","message":"\u003cstring>","type":"validation","http_status":400,"retryable":true,"doc_url":"\u003cstring>","details":[{}],"retry_after":2,"reset_at":"2026-10-14T17:01:00.000Z"},"trace_id":"trc_8f2a1c0e4b7d","timestamp":"2026-10-14T17:01:00.000Z","client_request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"dc6db065-63ef-458b-9116-3a91ef20dbc4":{"description":"The API key is missing or invalid (`UNAUTHORIZED`), revoked (`API_KEY_REVOKED`) or expired (`API_KEY_EXPIRED`).","headers":{"X-Trace-ID":{"description":"Unique ID for this request. It matches `trace_id` in the body. Include it when you contact Blujay support.","schema":{"type":"string","examples":["trc_8f2a1c0e4b7d"],"pattern":"^trc_[A-Za-z0-9_-]+$"}}},"content":{"application/json":{"schema":{"type":"object","description":"Wraps every error response. Branch on `error.code`, and include `trace_id` when you contact support.","required":["status","error","trace_id","timestamp"],"properties":{"status":{"const":"error","isRequired":true,"uniqueKey":"status","typeLabel":"any"},"error":{"type":"object","required":["code","message","type","http_status","retryable","doc_url","details"],"properties":{"code":{"type":"string","description":"Stable, machine-readable error code. Branch on this value.","examples":["RATE_LIMIT_EXCEEDED","QUEUE_UNAVAILABLE","FEATURE_NOT_ENABLED"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable explanation. It can change, so don't parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"type":{"type":"string","description":"Broad error category.","examples":["validation","auth","idempotency","rate_limit","queue","feature_gate"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"http_status":{"type":"integer","description":"The HTTP status code of the response.","enum":[400,401,403,404,409,413,415,422,429,500,502,503],"isRequired":true,"uniqueKey":"error.http_status","typeLabel":"enum\u003cinteger>"},"retryable":{"type":"boolean","description":"Whether sending the same request again later can succeed.","isRequired":true,"uniqueKey":"error.retryable","typeLabel":"boolean"},"doc_url":{"type":"string","format":"uri","description":"Link to documentation for this error code.","isRequired":true,"uniqueKey":"error.doc_url","typeLabel":"string\u003curi>"},"details":{"type":"array","description":"Extra structured context, such as the fields that failed validation or the limit you hit.","items":{"type":"object","additionalProperties":true,"uniqueKey":"error.details.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"error.details","typeLabel":"object[]"},"retry_after":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Also sent as the `Retry-After` header.","uniqueKey":"error.retry_after","typeLabel":"integer"},"reset_at":{"type":"string","examples":["2026-10-14T17:01:00.000Z"],"format":"date-time","description":"When the limit you hit resets.","uniqueKey":"error.reset_at","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"trace_id":{"type":"string","examples":["trc_8f2a1c0e4b7d"],"pattern":"^trc_[A-Za-z0-9_-]+$","isRequired":true,"uniqueKey":"trace_id","typeLabel":"string"},"timestamp":{"type":"string","examples":["2026-10-14T17:01:00.000Z"],"format":"date-time","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"client_request_id":{"type":"string","description":"Your `X-Request-ID` header value, echoed back when you send one.","uniqueKey":"client_request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":"error","error":{"code":"RATE_LIMIT_EXCEEDED","message":"\u003cstring>","type":"validation","http_status":400,"retryable":true,"doc_url":"\u003cstring>","details":[{}],"retry_after":2,"reset_at":"2026-10-14T17:01:00.000Z"},"trace_id":"trc_8f2a1c0e4b7d","timestamp":"2026-10-14T17:01:00.000Z","client_request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"1565403f-a1ef-4315-abbb-9bd4e48aa280":{"description":"The teammate or chat isn't in that customer, or the credential isn't a partner key (`NOT_FOUND`).","headers":{"X-Trace-ID":{"description":"Unique ID for this request. It matches `trace_id` in the body. Include it when you contact Blujay support.","schema":{"type":"string","examples":["trc_8f2a1c0e4b7d"],"pattern":"^trc_[A-Za-z0-9_-]+$"}}},"content":{"application/json":{"schema":{"type":"object","description":"Wraps every error response. Branch on `error.code`, and include `trace_id` when you contact support.","required":["status","error","trace_id","timestamp"],"properties":{"status":{"const":"error","isRequired":true,"uniqueKey":"status","typeLabel":"any"},"error":{"type":"object","required":["code","message","type","http_status","retryable","doc_url","details"],"properties":{"code":{"type":"string","description":"Stable, machine-readable error code. Branch on this value.","examples":["RATE_LIMIT_EXCEEDED","QUEUE_UNAVAILABLE","FEATURE_NOT_ENABLED"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable explanation. It can change, so don't parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"type":{"type":"string","description":"Broad error category.","examples":["validation","auth","idempotency","rate_limit","queue","feature_gate"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"http_status":{"type":"integer","description":"The HTTP status code of the response.","enum":[400,401,403,404,409,413,415,422,429,500,502,503],"isRequired":true,"uniqueKey":"error.http_status","typeLabel":"enum\u003cinteger>"},"retryable":{"type":"boolean","description":"Whether sending the same request again later can succeed.","isRequired":true,"uniqueKey":"error.retryable","typeLabel":"boolean"},"doc_url":{"type":"string","format":"uri","description":"Link to documentation for this error code.","isRequired":true,"uniqueKey":"error.doc_url","typeLabel":"string\u003curi>"},"details":{"type":"array","description":"Extra structured context, such as the fields that failed validation or the limit you hit.","items":{"type":"object","additionalProperties":true,"uniqueKey":"error.details.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"error.details","typeLabel":"object[]"},"retry_after":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Also sent as the `Retry-After` header.","uniqueKey":"error.retry_after","typeLabel":"integer"},"reset_at":{"type":"string","examples":["2026-10-14T17:01:00.000Z"],"format":"date-time","description":"When the limit you hit resets.","uniqueKey":"error.reset_at","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"trace_id":{"type":"string","examples":["trc_8f2a1c0e4b7d"],"pattern":"^trc_[A-Za-z0-9_-]+$","isRequired":true,"uniqueKey":"trace_id","typeLabel":"string"},"timestamp":{"type":"string","examples":["2026-10-14T17:01:00.000Z"],"format":"date-time","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"client_request_id":{"type":"string","description":"Your `X-Request-ID` header value, echoed back when you send one.","uniqueKey":"client_request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":"error","error":{"code":"RATE_LIMIT_EXCEEDED","message":"\u003cstring>","type":"validation","http_status":400,"retryable":true,"doc_url":"\u003cstring>","details":[{}],"retry_after":2,"reset_at":"2026-10-14T17:01:00.000Z"},"trace_id":"trc_8f2a1c0e4b7d","timestamp":"2026-10-14T17:01:00.000Z","client_request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"8f24b7eb-c682-42e1-93a5-fa86f9107279":{"description":"The customer is paused (`CUSTOMER_PAUSED`) or closing (`CUSTOMER_CLOSING`).","headers":{"X-Trace-ID":{"description":"Unique ID for this request. It matches `trace_id` in the body. Include it when you contact Blujay support.","schema":{"type":"string","examples":["trc_8f2a1c0e4b7d"],"pattern":"^trc_[A-Za-z0-9_-]+$"}}},"content":{"application/json":{"schema":{"type":"object","description":"Wraps every error response. Branch on `error.code`, and include `trace_id` when you contact support.","required":["status","error","trace_id","timestamp"],"properties":{"status":{"const":"error","isRequired":true,"uniqueKey":"status","typeLabel":"any"},"error":{"type":"object","required":["code","message","type","http_status","retryable","doc_url","details"],"properties":{"code":{"type":"string","description":"Stable, machine-readable error code. Branch on this value.","examples":["RATE_LIMIT_EXCEEDED","QUEUE_UNAVAILABLE","FEATURE_NOT_ENABLED"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable explanation. It can change, so don't parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"type":{"type":"string","description":"Broad error category.","examples":["validation","auth","idempotency","rate_limit","queue","feature_gate"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"http_status":{"type":"integer","description":"The HTTP status code of the response.","enum":[400,401,403,404,409,413,415,422,429,500,502,503],"isRequired":true,"uniqueKey":"error.http_status","typeLabel":"enum\u003cinteger>"},"retryable":{"type":"boolean","description":"Whether sending the same request again later can succeed.","isRequired":true,"uniqueKey":"error.retryable","typeLabel":"boolean"},"doc_url":{"type":"string","format":"uri","description":"Link to documentation for this error code.","isRequired":true,"uniqueKey":"error.doc_url","typeLabel":"string\u003curi>"},"details":{"type":"array","description":"Extra structured context, such as the fields that failed validation or the limit you hit.","items":{"type":"object","additionalProperties":true,"uniqueKey":"error.details.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"error.details","typeLabel":"object[]"},"retry_after":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Also sent as the `Retry-After` header.","uniqueKey":"error.retry_after","typeLabel":"integer"},"reset_at":{"type":"string","examples":["2026-10-14T17:01:00.000Z"],"format":"date-time","description":"When the limit you hit resets.","uniqueKey":"error.reset_at","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"trace_id":{"type":"string","examples":["trc_8f2a1c0e4b7d"],"pattern":"^trc_[A-Za-z0-9_-]+$","isRequired":true,"uniqueKey":"trace_id","typeLabel":"string"},"timestamp":{"type":"string","examples":["2026-10-14T17:01:00.000Z"],"format":"date-time","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"client_request_id":{"type":"string","description":"Your `X-Request-ID` header value, echoed back when you send one.","uniqueKey":"client_request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":"error","error":{"code":"RATE_LIMIT_EXCEEDED","message":"\u003cstring>","type":"validation","http_status":400,"retryable":true,"doc_url":"\u003cstring>","details":[{}],"retry_after":2,"reset_at":"2026-10-14T17:01:00.000Z"},"trace_id":"trc_8f2a1c0e4b7d","timestamp":"2026-10-14T17:01:00.000Z","client_request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"89318690-a847-432e-94f5-44f81df2d567":{"description":"The embedded view can't be opened right now (`EMBED_UNAVAILABLE`). Retry later.","headers":{"X-Trace-ID":{"description":"Unique ID for this request. It matches `trace_id` in the body. Include it when you contact Blujay support.","schema":{"type":"string","examples":["trc_8f2a1c0e4b7d"],"pattern":"^trc_[A-Za-z0-9_-]+$"}}},"content":{"application/json":{"schema":{"type":"object","description":"Wraps every error response. Branch on `error.code`, and include `trace_id` when you contact support.","required":["status","error","trace_id","timestamp"],"properties":{"status":{"const":"error","isRequired":true,"uniqueKey":"status","typeLabel":"any"},"error":{"type":"object","required":["code","message","type","http_status","retryable","doc_url","details"],"properties":{"code":{"type":"string","description":"Stable, machine-readable error code. Branch on this value.","examples":["RATE_LIMIT_EXCEEDED","QUEUE_UNAVAILABLE","FEATURE_NOT_ENABLED"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable explanation. It can change, so don't parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"type":{"type":"string","description":"Broad error category.","examples":["validation","auth","idempotency","rate_limit","queue","feature_gate"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"string"},"http_status":{"type":"integer","description":"The HTTP status code of the response.","enum":[400,401,403,404,409,413,415,422,429,500,502,503],"isRequired":true,"uniqueKey":"error.http_status","typeLabel":"enum\u003cinteger>"},"retryable":{"type":"boolean","description":"Whether sending the same request again later can succeed.","isRequired":true,"uniqueKey":"error.retryable","typeLabel":"boolean"},"doc_url":{"type":"string","format":"uri","description":"Link to documentation for this error code.","isRequired":true,"uniqueKey":"error.doc_url","typeLabel":"string\u003curi>"},"details":{"type":"array","description":"Extra structured context, such as the fields that failed validation or the limit you hit.","items":{"type":"object","additionalProperties":true,"uniqueKey":"error.details.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"error.details","typeLabel":"object[]"},"retry_after":{"type":"integer","minimum":1,"description":"Seconds to wait before retrying. Also sent as the `Retry-After` header.","uniqueKey":"error.retry_after","typeLabel":"integer"},"reset_at":{"type":"string","examples":["2026-10-14T17:01:00.000Z"],"format":"date-time","description":"When the limit you hit resets.","uniqueKey":"error.reset_at","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"trace_id":{"type":"string","examples":["trc_8f2a1c0e4b7d"],"pattern":"^trc_[A-Za-z0-9_-]+$","isRequired":true,"uniqueKey":"trace_id","typeLabel":"string"},"timestamp":{"type":"string","examples":["2026-10-14T17:01:00.000Z"],"format":"date-time","isRequired":true,"uniqueKey":"timestamp","typeLabel":"string\u003cdate-time>"},"client_request_id":{"type":"string","description":"Your `X-Request-ID` header value, echoed back when you send one.","uniqueKey":"client_request_id","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":"error","error":{"code":"RATE_LIMIT_EXCEEDED","message":"\u003cstring>","type":"validation","http_status":400,"retryable":true,"doc_url":"\u003cstring>","details":[{}],"retry_after":2,"reset_at":"2026-10-14T17:01:00.000Z"},"trace_id":"trc_8f2a1c0e4b7d","timestamp":"2026-10-14T17:01:00.000Z","client_request_id":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"caadd39d-cc17-4abd-813e-c1d7112cec2f":{"PublicApiKey":{"type":"http","scheme":"bearer","bearerFormat":"blu_...","description":"Your workspace API key, sent as `Authorization: Bearer blu_...`. Workspace admins can find it in the Blujay app under **API**.\n\nAn API key has full access to your workspace and works on every endpoint. There is no test mode: every key sends real messages and changes real data, so keep it secret and use it only from your server.\n\nEach API key can make 600 read requests and 120 write requests per minute, plus 60 attachment requests per minute. Over a limit you get `429 RATE_LIMIT_EXCEEDED` with `Retry-After`.\n\n**Reseller partner keys.** A partner key acts for one of the partner's customers when the request names it in the `Blujay-Workspace` header (the customer's `workspace_` ID). Without the header it reaches only `/v1/partner/*` and `/v1/me`. Each customer gets the limits above for each partner key, and all of a partner's requests together get ten times those limits; a `429` says which in `error.details[0].scope` (`partner_customer` or `partner`). A `messaging` key can read anything for a customer and change chats, messages, contacts, attachments and vCards; everything else needs an `admin` key (`403 PARTNER_ROLE_FORBIDDEN`). Paused or closing customers can be read but not changed (`409 CUSTOMER_PAUSED` or `CUSTOMER_CLOSING`). Any other workspace ID in the header returns `404 NOT_FOUND`; using the header with any other credential returns `400 WORKSPACE_HEADER_NOT_ALLOWED`.\n","scopes":[],"schemeName":"PublicApiKey"}}},"servers":{"660565a7-87d9-4b09-af2e-872548a05c9e":{"url":"https://api.blujay.io","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"blu_...","description":"Your workspace API key, sent as `Authorization: Bearer blu_...`. Workspace admins can find it in the Blujay app under **API**.\n\nAn API key has full access to your workspace and works on every endpoint. There is no test mode: every key sends real messages and changes real data, so keep it secret and use it only from your server.\n\nEach API key can make 600 read requests and 120 write requests per minute, plus 60 attachment requests per minute. Over a limit you get `429 RATE_LIMIT_EXCEEDED` with `Retry-After`.\n\n**Reseller partner keys.** A partner key acts for one of the partner's customers when the request names it in the `Blujay-Workspace` header (the customer's `workspace_` ID). Without the header it reaches only `/v1/partner/*` and `/v1/me`. Each customer gets the limits above for each partner key, and all of a partner's requests together get ten times those limits; a `429` says which in `error.details[0].scope` (`partner_customer` or `partner`). A `messaging` key can read anything for a customer and change chats, messages, contacts, attachments and vCards; everything else needs an `admin` key (`403 PARTNER_ROLE_FORBIDDEN`). Paused or closing customers can be read but not changed (`409 CUSTOMER_PAUSED` or `CUSTOMER_CLOSING`). Any other workspace ID in the header returns `404 NOT_FOUND`; using the header with any other credential returns `400 WORKSPACE_HEADER_NOT_ALLOWED`.\n","scopes":[],"schemeName":"PublicApiKey"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Your workspace API key, sent as `Authorization: Bearer blu_...`. Workspace admins can find it in the Blujay app under **API**.\n\nAn API key has full access to your workspace and works on every endpoint. There is no test mode: every key sends real messages and changes real data, so keep it secret and use it only from your server.\n\nEach API key can make 600 read requests and 120 write requests per minute, plus 60 attachment requests per minute. Over a limit you get `429 RATE_LIMIT_EXCEEDED` with `Retry-After`.\n\n**Reseller partner keys.** A partner key acts for one of the partner's customers when the request names it in the `Blujay-Workspace` header (the customer's `workspace_` ID). Without the header it reaches only `/v1/partner/*` and `/v1/me`. Each customer gets the limits above for each partner key, and all of a partner's requests together get ten times those limits; a `429` says which in `error.details[0].scope` (`partner_customer` or `partner`). A `messaging` key can read anything for a customer and change chats, messages, contacts, attachments and vCards; everything else needs an `admin` key (`403 PARTNER_ROLE_FORBIDDEN`). Paused or closing customers can be read but not changed (`409 CUSTOMER_PAUSED` or `CUSTOMER_CLOSING`). Any other workspace ID in the header returns `404 NOT_FOUND`; using the header with any other credential returns `400 WORKSPACE_HEADER_NOT_ALLOWED`.\n","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"PublicApiKey","name":"Authorization"}],"title":"PublicApiKey"}]},"originalFileLocation":"api-reference/openapi.yaml"},"subdomain":"blujay-api","siteName":"Blujay API","title":"Create an embedded view URL - Blujay API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-11T01:31:24.074Z","originalFileLocation":"api-reference/partners/create-an-embedded-view-url.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=\"Reseller partner keys (admin or messaging) only, with Blujay-Workspace. Returns a single-use URL for the embedded messaging view, acting as one of the customer\u0026#x27;s teammates, either on one conversation (thread) or on the customer\u0026#x27;s whole inbox (inbox). The URL works once and only for 60 seconds, so create it when the page that shows it loads, and never log, store or share it. Only the page at parent_origin can frame it. Any other credential gets 404. See the partner embed guide for framing and the view\u0026#x27;s messages.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Blujay API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/blujay-api/ME8eQTARhlNFGeGt/_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/blujay-api/ME8eQTARhlNFGeGt/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/blujay-api/ME8eQTARhlNFGeGt/_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/blujay-api/ME8eQTARhlNFGeGt/_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/blujay-api/ME8eQTARhlNFGeGt/_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/blujay-api/ME8eQTARhlNFGeGt/_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/blujay-api/ME8eQTARhlNFGeGt/_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/blujay-api/ME8eQTARhlNFGeGt/_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/blujay-api/ME8eQTARhlNFGeGt/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create an embedded view URL - Blujay API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Reseller partner keys (admin or messaging) only, with Blujay-Workspace. Returns a single-use URL for the embedded messaging view, acting as one of the customer\u0026#x27;s teammates, either on one conversation (thread) or on the customer\u0026#x27;s whole inbox (inbox). The URL works once and only for 60 seconds, so create it when the page that shows it loads, and never log, store or share it. Only the page at parent_origin can frame it. Any other credential gets 404. See the partner embed guide for framing and the view\u0026#x27;s messages.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Blujay API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.blujay.io/api-reference/partners/create-an-embedded-view-url\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://blujay-api.mintlify.site/_mintlify/api/og/v2?division=Documentation\u0026amp;title=Create+an+embedded+view+URL\u0026amp;description=Reseller+partner+keys+%28%60admin%60+or+%60messaging%60%29+only%2C+with+%60Blujay-Workspace%60.+Returns+a+single-use+URL+for+the+embedded+messaging+view%2C+acting+as+one+of+the+cus\u0026amp;theme=fd31e5cf5d981648caebe5b9\u0026amp;signature=6a8814b1b6af5b670729c68d50f0afaa2d90b8afb6fceae165440fa9bae45113\">\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=\"Create an embedded view URL - Blujay API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Reseller partner keys (admin or messaging) only, with Blujay-Workspace. Returns a single-use URL for the embedded messaging view, acting as one of the customer\u0026#x27;s teammates, either on one conversation (thread) or on the customer\u0026#x27;s whole inbox (inbox). The URL works once and only for 60 seconds, so create it when the page that shows it loads, and never log, store or share it. Only the page at parent_origin can frame it. Any other credential gets 404. See the partner embed guide for framing and the view\u0026#x27;s messages.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://blujay-api.mintlify.site/_mintlify/api/og/v2?division=Documentation\u0026amp;title=Create+an+embedded+view+URL\u0026amp;description=Reseller+partner+keys+%28%60admin%60+or+%60messaging%60%29+only%2C+with+%60Blujay-Workspace%60.+Returns+a+single-use+URL+for+the+embedded+messaging+view%2C+acting+as+one+of+the+cus\u0026amp;theme=fd31e5cf5d981648caebe5b9\u0026amp;signature=6a8814b1b6af5b670729c68d50f0afaa2d90b8afb6fceae165440fa9bae45113\">\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/blujay-api/ME8eQTARhlNFGeGt/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Blujay API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#007AFF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.blujay.io/api-reference/partners/create-an-embedded-view-url\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/partners/create-an-embedded-view-url.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Blujay API\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Blujay API\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/partners/create-an-embedded-view-url.md","siteName":"Blujay API","nav":{"global":null,"tabs":[{"tab":"Guides","groups":[{"group":"Guides","pages":[{"group":"Blujay API","expanded":true,"pages":[{"title":"Blujay API","sidebarTitle":"Introduction","href":""}]},{"group":"Get Started","expanded":true,"pages":[{"title":"Quickstart","href":"/quickstart"},{"title":"Authentication","href":"/authentication"},{"title":"Key Concepts","href":"/key-concepts"},{"title":"SDKs","href":"/sdks"},{"title":"AI Coding Agents","href":"/build-with-ai"},{"title":"MCP Server","href":"/mcp-server"},{"title":"Best Practices","href":"/best-practices"}]},{"group":"Messages","expanded":true,"pages":[{"title":"Messaging","sidebarTitle":"Overview","href":"/messaging/overview"},{"title":"Sending Messages","href":"/messaging/send-messages"},{"title":"Receiving Messages","href":"/messaging/receive-messages"},{"title":"Message Status","href":"/messaging/lifecycle"},{"title":"Attachments","href":"/messaging/media"},{"title":"Voice Memos","href":"/messaging/voice-memos"},{"title":"Contact Cards","href":"/messaging/contact-cards"},{"title":"Rich Link Previews","href":"/messaging/rich-link-previews"},{"title":"Reactions","href":"/messaging/reactions"},{"title":"Threaded Replies","href":"/messaging/replies"},{"title":"Message Effects","href":"/messaging/effects"},{"title":"Edit and Unsend","href":"/messaging/edit-and-unsend"}]},{"group":"Chats","expanded":true,"pages":[{"title":"Chats","sidebarTitle":"Overview","href":"/chats/overview"},{"title":"Number Lookup","href":"/messaging/choosing-a-service"},{"title":"Group Chats","href":"/messaging/group-chats"},{"title":"Typing and Read Receipts","href":"/messaging/typing-and-read-receipts"},{"title":"Name and Photo Sharing","href":"/messaging/name-and-photo"}]},{"group":"Numbers and Plans","expanded":true,"pages":[{"title":"Phone Numbers","href":"/phone-numbers"},{"title":"Plan Limits","href":"/plans"}]},{"group":"Contacts","expanded":true,"pages":[{"title":"Contacts","href":"/contacts"},{"title":"Opt-Outs","href":"/opt-outs"},{"title":"Workflows","href":"/workflows"}]},{"group":"Calls","expanded":true,"pages":[{"title":"Calls and Recordings","href":"/messaging/calls"}]},{"group":"Webhooks","expanded":true,"pages":[{"title":"Webhooks","sidebarTitle":"Overview","href":"/webhooks/overview"},{"title":"Verifying Signatures","href":"/webhooks/verify-signatures"},{"title":"Event Types","href":"/webhooks/events"},{"title":"Delivery and Retries","href":"/webhooks/delivery"},{"title":"Versions","href":"/webhooks/versions"}]},{"group":"Going Live","expanded":true,"pages":[{"title":"Making Requests","href":"/making-requests"},{"title":"Sending Rules","href":"/messaging/sending-rules"},{"title":"Rate Limits","href":"/rate-limits"},{"title":"Idempotency","href":"/idempotency"},{"title":"Debugging","href":"/debugging"}]},{"group":"Partners","expanded":true,"pages":[{"title":"Partner Accounts","href":"/partners/overview"}]},{"group":"Help","expanded":true,"pages":[{"title":"Examples","href":"/examples"},{"title":"FAQ","href":"/faq"},{"title":"Glossary","href":"/glossary"},{"title":"Support","href":"/support"}]}]}]},{"tab":"API reference","groups":[{"group":"Overview","pages":[{"title":"API reference","href":"/api-reference/introduction"}]},{"group":"Endpoints","pages":[{"group":"Auth","pages":[{"title":"Get the current credential","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/me","href":"/api-reference/auth/get-the-current-credential"}]},{"group":"Chats","pages":[{"title":"List chats","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/chats","href":"/api-reference/chats/list-chats"},{"title":"Create a chat and send the first message","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/chats","href":"/api-reference/chats/create-a-chat-and-send-the-first-message"},{"title":"Get a chat","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/chats/{chat_id}","href":"/api-reference/chats/get-a-chat"},{"title":"Rename a group chat or set its photo","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/chats/{chat_id}","href":"/api-reference/chats/rename-a-group-chat-or-set-its-photo"},{"title":"Download a group chat's photo","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/chats/{chat_id}/icon","href":"/api-reference/chats/download-a-group-chats-photo"},{"title":"Leave a group chat","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/chats/{chat_id}/leave","href":"/api-reference/chats/leave-a-group-chat"},{"title":"List group participants","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/chats/{chat_id}/participants","href":"/api-reference/chats/list-group-participants"},{"title":"Add a group participant","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/chats/{chat_id}/participants","href":"/api-reference/chats/add-a-group-participant"},{"title":"Remove a group participant","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/chats/{chat_id}/participants","href":"/api-reference/chats/remove-a-group-participant"},{"title":"Start a typing indicator","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/chats/{chat_id}/typing","href":"/api-reference/chats/start-a-typing-indicator"},{"title":"Stop a typing indicator","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/chats/{chat_id}/typing","href":"/api-reference/chats/stop-a-typing-indicator"},{"title":"Mark a chat as read","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/chats/{chat_id}/read","href":"/api-reference/chats/mark-a-chat-as-read"}]},{"group":"Messages","pages":[{"title":"List messages in a chat","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/chats/{chat_id}/messages","href":"/api-reference/messages/list-messages-in-a-chat"},{"title":"Send a message","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/chats/{chat_id}/messages","href":"/api-reference/messages/send-a-message"},{"title":"List messages","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/messages","href":"/api-reference/messages/list-messages"},{"title":"Get a message","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/messages/{message_id}","href":"/api-reference/messages/get-a-message"},{"title":"Edit a message","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/messages/{message_id}","href":"/api-reference/messages/edit-a-message"},{"title":"List a reply thread","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/messages/{message_id}/thread","href":"/api-reference/messages/list-a-reply-thread"},{"title":"Unsend a message","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/messages/{message_id}/unsend","href":"/api-reference/messages/unsend-a-message"},{"title":"Add a reaction","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/messages/{message_id}/reactions","href":"/api-reference/messages/add-a-reaction"},{"title":"Remove a reaction","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/messages/{message_id}/reactions/{type}","href":"/api-reference/messages/remove-a-reaction"}]},{"group":"Phone Numbers","pages":[{"title":"List phone numbers","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/phone-numbers","href":"/api-reference/phone-numbers/list-phone-numbers"},{"title":"Get a phone number","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/phone-numbers/{phone_number_id}","href":"/api-reference/phone-numbers/get-a-phone-number"},{"title":"Get a number's iMessage name and photo","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/phone-numbers/{phone_number_id}/contact-card","href":"/api-reference/phone-numbers/get-a-numbers-imessage-name-and-photo"},{"title":"Set a number's iMessage name and photo","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml put /v1/phone-numbers/{phone_number_id}/contact-card","href":"/api-reference/phone-numbers/set-a-numbers-imessage-name-and-photo"},{"title":"Turn off a number's iMessage name and photo","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/phone-numbers/{phone_number_id}/contact-card","href":"/api-reference/phone-numbers/turn-off-a-numbers-imessage-name-and-photo"},{"title":"Download a number's iMessage photo","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/phone-numbers/{phone_number_id}/contact-card/photo","href":"/api-reference/phone-numbers/download-a-numbers-imessage-photo"}]},{"group":"Capability","pages":[{"title":"Check iMessage, RCS or SMS support","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/capability/evaluate_service","href":"/api-reference/capability/check-imessage-rcs-or-sms-support"}]},{"group":"Team Members","pages":[{"title":"List assignable team members","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/team-members/assignable","href":"/api-reference/team-members/list-assignable-team-members"}]},{"group":"Partners","pages":[]},{"group":"Workflows","pages":[{"title":"List workflows","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/workflows","href":"/api-reference/workflows/list-workflows"},{"title":"Enroll a contact in a workflow","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/workflows/{workflow_id}/enrollments","href":"/api-reference/workflows/enroll-a-contact-in-a-workflow"}]},{"group":"Contacts","pages":[{"title":"List contacts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/contacts","href":"/api-reference/contacts/list-contacts"},{"title":"Create a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/contacts","href":"/api-reference/contacts/create-a-contact"},{"title":"Create or update a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/contacts/import","href":"/api-reference/contacts/create-or-update-a-contact"},{"title":"Search contacts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/contacts/search","href":"/api-reference/contacts/search-contacts"},{"title":"Get a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/contacts/{contact_id}","href":"/api-reference/contacts/get-a-contact"},{"title":"Delete a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/contacts/{contact_id}","href":"/api-reference/contacts/delete-a-contact"},{"title":"Update a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/contacts/{contact_id}","href":"/api-reference/contacts/update-a-contact"},{"title":"Add a tag to a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/contacts/{contact_id}/tags","href":"/api-reference/contacts/add-a-tag-to-a-contact"},{"title":"List a contact's notes","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/contacts/{contact_id}/notes","href":"/api-reference/contacts/list-a-contacts-notes"},{"title":"Add a note to a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/contacts/{contact_id}/notes","href":"/api-reference/contacts/add-a-note-to-a-contact"},{"title":"Mark a contact completed","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/contacts/{contact_id}/stage","href":"/api-reference/contacts/mark-a-contact-completed"},{"title":"Assign a contact to a team member","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/contacts/{contact_id}/assignee","href":"/api-reference/contacts/assign-a-contact-to-a-team-member"},{"title":"Opt out a contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/contacts/{contact_id}/suppress","href":"/api-reference/contacts/opt-out-a-contact"},{"title":"Remove a contact's opt-out","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/contacts/{contact_id}/unsuppress","href":"/api-reference/contacts/remove-a-contacts-opt-out"},{"title":"Opt out a phone number or email","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/contacts/suppressions","href":"/api-reference/contacts/opt-out-a-phone-number-or-email"}]},{"group":"Attachments","pages":[{"title":"Upload an attachment","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/attachments","href":"/api-reference/attachments/upload-an-attachment"},{"title":"Get an attachment","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/attachments/{attachment_id}","href":"/api-reference/attachments/get-an-attachment"},{"title":"Delete an attachment","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/attachments/{attachment_id}","href":"/api-reference/attachments/delete-an-attachment"},{"title":"Download an attachment","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/attachments/{attachment_id}/content","href":"/api-reference/attachments/download-an-attachment"}]},{"group":"Calls","pages":[{"title":"Download a call recording","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/calls/{call_id}/recording","href":"/api-reference/calls/download-a-call-recording"}]},{"group":"vCards","pages":[{"title":"List saved vCards","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/vcards","href":"/api-reference/vcards/list-saved-vcards"},{"title":"Save a vCard","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/vcards","href":"/api-reference/vcards/save-a-vcard"},{"title":"Get a saved vCard","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/vcards/{vcard_id}","href":"/api-reference/vcards/get-a-saved-vcard"},{"title":"Delete a saved vCard","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/vcards/{vcard_id}","href":"/api-reference/vcards/delete-a-saved-vcard"},{"title":"Update a saved vCard","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/vcards/{vcard_id}","href":"/api-reference/vcards/update-a-saved-vcard"}]},{"group":"Webhooks","pages":[{"title":"List webhook subscriptions","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/webhook-subscriptions","href":"/api-reference/webhooks/list-webhook-subscriptions"},{"title":"Create a webhook subscription","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/webhook-subscriptions","href":"/api-reference/webhooks/create-a-webhook-subscription"},{"title":"Get a webhook subscription","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/webhook-subscriptions/{subscription_id}","href":"/api-reference/webhooks/get-a-webhook-subscription"},{"title":"Delete a webhook subscription","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml delete /v1/webhook-subscriptions/{subscription_id}","href":"/api-reference/webhooks/delete-a-webhook-subscription"},{"title":"Update a webhook subscription","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml patch /v1/webhook-subscriptions/{subscription_id}","href":"/api-reference/webhooks/update-a-webhook-subscription"},{"title":"List webhook delivery attempts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml get /v1/webhook-subscriptions/{subscription_id}/deliveries","href":"/api-reference/webhooks/list-webhook-delivery-attempts"},{"title":"Replay a webhook event","deprecated":null,"version":null,"openapi":"/api-reference/openapi.yaml post /v1/webhook-subscriptions/{subscription_id}/events/{event_id}/replay","href":"/api-reference/webhooks/replay-a-webhook-event"},{"title":"Webhook event","version":null,"deprecated":null,"openapi":"/api-reference/openapi.yaml webhook publicEvent","href":"/api-reference/webhooks/webhook-event"}]}]},{"group":"Errors","pages":[{"title":"Errors","href":"/errors/index"},{"group":"Request errors","pages":[{"title":"VALIDATION_ERROR","sidebarTitle":"VALIDATION_ERROR","href":"/errors/validation-error"},{"title":"INVALID_PUBLIC_ID","sidebarTitle":"INVALID_PUBLIC_ID","href":"/errors/invalid-public-id"},{"title":"INVALID_CURSOR","sidebarTitle":"INVALID_CURSOR","href":"/errors/invalid-cursor"},{"title":"NOT_FOUND","sidebarTitle":"NOT_FOUND","href":"/errors/not-found"},{"title":"FEATURE_NOT_ENABLED","sidebarTitle":"FEATURE_NOT_ENABLED","href":"/errors/feature-not-enabled"}]},{"group":"Authentication","pages":[{"title":"UNAUTHORIZED","sidebarTitle":"UNAUTHORIZED","href":"/errors/unauthorized"},{"title":"API_KEY_REVOKED","sidebarTitle":"API_KEY_REVOKED","href":"/errors/api-key-revoked"},{"title":"API_KEY_EXPIRED","sidebarTitle":"API_KEY_EXPIRED","href":"/errors/api-key-expired"},{"title":"OAUTH_TOKEN_INVALID","sidebarTitle":"OAUTH_TOKEN_INVALID","href":"/errors/oauth-token-invalid"},{"title":"OAUTH_SCOPE_REQUIRED","sidebarTitle":"OAUTH_SCOPE_REQUIRED","href":"/errors/oauth-scope-required"},{"title":"OAUTH_ROUTE_NOT_ENABLED","sidebarTitle":"OAUTH_ROUTE_NOT_ENABLED","href":"/errors/oauth-route-not-enabled"}]},{"group":"Idempotency","pages":[{"title":"IDEMPOTENCY_REQUEST_MISMATCH","sidebarTitle":"IDEMPOTENCY_REQUEST_MISMATCH","href":"/errors/idempotency-request-mismatch"},{"title":"IDEMPOTENCY_KEY_MISMATCH","sidebarTitle":"IDEMPOTENCY_KEY_MISMATCH","href":"/errors/idempotency-key-mismatch"},{"title":"IDEMPOTENCY_IN_PROGRESS","sidebarTitle":"IDEMPOTENCY_IN_PROGRESS","href":"/errors/idempotency-in-progress"}]},{"group":"Rate limits and capacity","pages":[{"title":"RATE_LIMIT_EXCEEDED","sidebarTitle":"RATE_LIMIT_EXCEEDED","href":"/errors/rate-limit-exceeded"},{"title":"QUEUE_FULL","sidebarTitle":"QUEUE_FULL","href":"/errors/queue-full"},{"title":"ATTACHMENT_CAPACITY_EXCEEDED","sidebarTitle":"ATTACHMENT_CAPACITY_EXCEEDED","href":"/errors/attachment-capacity-exceeded"}]},{"group":"Sending messages","pages":[{"title":"EMAIL_REQUIRES_IMESSAGE","sidebarTitle":"EMAIL_REQUIRES_IMESSAGE","href":"/errors/email-requires-imessage"},{"title":"FIRST_MESSAGE_LINK_NOT_ALLOWED","sidebarTitle":"FIRST_MESSAGE_LINK_NOT_ALLOWED","href":"/errors/first-message-link-not-allowed"},{"title":"PRE_REPLY_CONTENT_BLOCKED","sidebarTitle":"PRE_REPLY_CONTENT_BLOCKED","href":"/errors/pre-reply-content-blocked"},{"title":"PRE_REPLY_LENGTH_EXCEEDED","sidebarTitle":"PRE_REPLY_LENGTH_EXCEEDED","href":"/errors/pre-reply-length-exceeded"},{"title":"PRE_REPLY_LIMIT_REACHED","sidebarTitle":"PRE_REPLY_LIMIT_REACHED","href":"/errors/pre-reply-limit-reached"},{"title":"RECIPIENT_SUPPRESSED","sidebarTitle":"RECIPIENT_SUPPRESSED","href":"/errors/recipient-suppressed"},{"title":"CONTACT_NOT_VERIFIED","sidebarTitle":"CONTACT_NOT_VERIFIED","href":"/errors/contact-not-verified"},{"title":"CONTACT_MUST_TEXT_FIRST","sidebarTitle":"CONTACT_MUST_TEXT_FIRST","href":"/errors/contact-must-text-first"},{"title":"SENDER_SUSPENDED","sidebarTitle":"SENDER_SUSPENDED","href":"/errors/sender-suspended"},{"title":"SENDER_RETIRED","sidebarTitle":"SENDER_RETIRED","href":"/errors/sender-retired"},{"title":"FROM_NUMBER_REQUIRED","sidebarTitle":"FROM_NUMBER_REQUIRED","href":"/errors/from-number-required"}]},{"group":"Chats and groups","pages":[{"title":"UNSUPPORTED_CHAT_OPERATION","sidebarTitle":"UNSUPPORTED_CHAT_OPERATION","href":"/errors/unsupported-chat-operation"},{"title":"REPLY_TARGET_NOT_FOUND","sidebarTitle":"REPLY_TARGET_NOT_FOUND","href":"/errors/reply-target-not-found"},{"title":"REPLY_TARGET_NOT_IN_CHAT","sidebarTitle":"REPLY_TARGET_NOT_IN_CHAT","href":"/errors/reply-target-not-in-chat"},{"title":"REPLY_TARGET_NOT_REPLYABLE","sidebarTitle":"REPLY_TARGET_NOT_REPLYABLE","href":"/errors/reply-target-not-replyable"},{"title":"REPLY_TARGET_NOT_SENT","sidebarTitle":"REPLY_TARGET_NOT_SENT","href":"/errors/reply-target-not-sent"},{"title":"PHONE_NUMBER_REQUIRED","sidebarTitle":"PHONE_NUMBER_REQUIRED","href":"/errors/phone-number-required"},{"title":"LAST_PHONE_NUMBER_IN_GROUP","sidebarTitle":"LAST_PHONE_NUMBER_IN_GROUP","href":"/errors/last-phone-number-in-group"},{"title":"GROUP_MINIMUM_PARTICIPANTS","sidebarTitle":"GROUP_MINIMUM_PARTICIPANTS","href":"/errors/group-minimum-participants"},{"title":"PHONE_NUMBER_HAS_SCHEDULED_MESSAGES","sidebarTitle":"PHONE_NUMBER_HAS_SCHEDULED_MESSAGES","href":"/errors/phone-number-has-scheduled-messages"},{"title":"PHONE_NUMBER_HAS_MESSAGES_SENDING","sidebarTitle":"PHONE_NUMBER_HAS_MESSAGES_SENDING","href":"/errors/phone-number-has-messages-sending"}]},{"group":"Edit and unsend","pages":[{"title":"MESSAGE_NOT_SENT_YET","sidebarTitle":"MESSAGE_NOT_SENT_YET","href":"/errors/message-not-sent-yet"},{"title":"MESSAGE_NOT_EDITABLE","sidebarTitle":"MESSAGE_NOT_EDITABLE","href":"/errors/message-not-editable"},{"title":"EDIT_WINDOW_EXPIRED","sidebarTitle":"EDIT_WINDOW_EXPIRED","href":"/errors/edit-window-expired"},{"title":"EDIT_LIMIT_REACHED","sidebarTitle":"EDIT_LIMIT_REACHED","href":"/errors/edit-limit-reached"},{"title":"UNSEND_WINDOW_EXPIRED","sidebarTitle":"UNSEND_WINDOW_EXPIRED","href":"/errors/unsend-window-expired"},{"title":"EDIT_UNCHANGED","sidebarTitle":"EDIT_UNCHANGED","href":"/errors/edit-unchanged"},{"title":"SENDER_UNAVAILABLE","sidebarTitle":"SENDER_UNAVAILABLE","href":"/errors/sender-unavailable"},{"title":"CHANGE_REJECTED","sidebarTitle":"CHANGE_REJECTED","href":"/errors/change-rejected"},{"title":"CHANGE_UNCONFIRMED","sidebarTitle":"CHANGE_UNCONFIRMED","href":"/errors/change-unconfirmed"}]},{"group":"Media","pages":[{"title":"ATTACHMENT_NOT_READY","sidebarTitle":"ATTACHMENT_NOT_READY","href":"/errors/attachment-not-ready"},{"title":"ATTACHMENT_UPLOAD_INVALID","sidebarTitle":"ATTACHMENT_UPLOAD_INVALID","href":"/errors/attachment-upload-invalid"},{"title":"ATTACHMENT_TOO_LARGE","sidebarTitle":"ATTACHMENT_TOO_LARGE","href":"/errors/attachment-too-large"},{"title":"UNSUPPORTED_ATTACHMENT_TYPE","sidebarTitle":"UNSUPPORTED_ATTACHMENT_TYPE","href":"/errors/unsupported-attachment-type"},{"title":"ATTACHMENT_FETCH_FAILED","sidebarTitle":"ATTACHMENT_FETCH_FAILED","href":"/errors/attachment-fetch-failed"},{"title":"ATTACHMENT_STORAGE_UNAVAILABLE","sidebarTitle":"ATTACHMENT_STORAGE_UNAVAILABLE","href":"/errors/attachment-storage-unavailable"},{"title":"VOICE_MEMO_UNREADABLE","sidebarTitle":"VOICE_MEMO_UNREADABLE","href":"/errors/voice-memo-unreadable"},{"title":"VOICE_MEMO_PROCESSING_UNAVAILABLE","sidebarTitle":"VOICE_MEMO_PROCESSING_UNAVAILABLE","href":"/errors/voice-memo-processing-unavailable"},{"title":"RECORDING_UNAVAILABLE","sidebarTitle":"RECORDING_UNAVAILABLE","href":"/errors/recording-unavailable"}]},{"group":"Contacts","pages":[{"title":"CONTACT_ALREADY_EXISTS","sidebarTitle":"CONTACT_ALREADY_EXISTS","href":"/errors/contact-already-exists"},{"title":"CONTACT_PHONE_LOCKED","sidebarTitle":"CONTACT_PHONE_LOCKED","href":"/errors/contact-phone-locked"},{"title":"CONTACT_MATCH_CONFLICT","sidebarTitle":"CONTACT_MATCH_CONFLICT","href":"/errors/contact-match-conflict"}]},{"group":"Workflows","pages":[{"title":"WORKFLOW_LIFECYCLE_ERROR","sidebarTitle":"WORKFLOW_LIFECYCLE_ERROR","href":"/errors/workflow-lifecycle-error"},{"title":"WORKFLOW_VALIDATION_ERROR","sidebarTitle":"WORKFLOW_VALIDATION_ERROR","href":"/errors/workflow-validation-error"}]},{"group":"Webhooks","pages":[{"title":"UNSUPPORTED_WEBHOOK_EVENT","sidebarTitle":"UNSUPPORTED_WEBHOOK_EVENT","href":"/errors/unsupported-webhook-event"},{"title":"WEBHOOK_URL_INVALID","sidebarTitle":"WEBHOOK_URL_INVALID","href":"/errors/webhook-url-invalid"},{"title":"WEBHOOK_URL_UNSAFE","sidebarTitle":"WEBHOOK_URL_UNSAFE","href":"/errors/webhook-url-unsafe"},{"title":"WEBHOOK_URL_UNRESOLVABLE","sidebarTitle":"WEBHOOK_URL_UNRESOLVABLE","href":"/errors/webhook-url-unresolvable"},{"title":"WEBHOOK_VERSION_UNSUPPORTED","sidebarTitle":"WEBHOOK_VERSION_UNSUPPORTED","href":"/errors/webhook-version-unsupported"},{"title":"WEBHOOK_SUBSCRIPTION_INACTIVE","sidebarTitle":"WEBHOOK_SUBSCRIPTION_INACTIVE","href":"/errors/webhook-subscription-inactive"},{"title":"WEBHOOK_PHONE_NUMBER_EXCLUDED","sidebarTitle":"WEBHOOK_PHONE_NUMBER_EXCLUDED","href":"/errors/webhook-phone-number-excluded"}]},{"group":"Server and availability","pages":[{"title":"CAPABILITY_CHECK_UNAVAILABLE","sidebarTitle":"CAPABILITY_CHECK_UNAVAILABLE","href":"/errors/capability-check-unavailable"},{"title":"QUEUE_UNAVAILABLE","sidebarTitle":"QUEUE_UNAVAILABLE","href":"/errors/queue-unavailable"},{"title":"PHONE_NUMBER_UNAVAILABLE","sidebarTitle":"PHONE_NUMBER_UNAVAILABLE","href":"/errors/phone-number-unavailable"},{"title":"INTERNAL_ERROR","sidebarTitle":"INTERNAL_ERROR","href":"/errors/internal-error"}]},{"group":"Reseller partners","pages":[{"title":"WORKSPACE_HEADER_NOT_ALLOWED","sidebarTitle":"WORKSPACE_HEADER_NOT_ALLOWED","href":"/errors/workspace-header-not-allowed"},{"title":"WORKSPACE_HEADER_REQUIRED","sidebarTitle":"WORKSPACE_HEADER_REQUIRED","href":"/errors/workspace-header-required"},{"title":"PARTNER_ROLE_FORBIDDEN","sidebarTitle":"PARTNER_ROLE_FORBIDDEN","href":"/errors/partner-role-forbidden"},{"title":"CUSTOMER_PAUSED","sidebarTitle":"CUSTOMER_PAUSED","href":"/errors/customer-paused"},{"title":"CUSTOMER_CLOSING","sidebarTitle":"CUSTOMER_CLOSING","href":"/errors/customer-closing"},{"title":"EMBED_PARENT_ORIGIN_NOT_REGISTERED","sidebarTitle":"EMBED_PARENT_ORIGIN_NOT_REGISTERED","href":"/errors/embed-parent-origin-not-registered"},{"title":"EMBED_UNAVAILABLE","sidebarTitle":"EMBED_UNAVAILABLE","href":"/errors/embed-unavailable"},{"title":"CUSTOMER_EXTERNAL_REFERENCE_CONFLICT","sidebarTitle":"CUSTOMER_EXTERNAL_REFERENCE_CONFLICT","href":"/errors/customer-external-reference-conflict"},{"title":"AREA_CODE_UNAVAILABLE","sidebarTitle":"AREA_CODE_UNAVAILABLE","href":"/errors/area-code-unavailable"},{"title":"NO_PHONE_NUMBERS_AVAILABLE","sidebarTitle":"NO_PHONE_NUMBERS_AVAILABLE","href":"/errors/no-phone-numbers-available"},{"title":"TEAM_MEMBER_EMAIL_CONFLICT","sidebarTitle":"TEAM_MEMBER_EMAIL_CONFLICT","href":"/errors/team-member-email-conflict"}]}]}]}]},"basePath":"","title":"Create an embedded view URL - Blujay API","buildId":"dpl_596ePT575z4qnAFksq1biRW97aLY","deploymentId":"dpl_596ePT575z4qnAFksq1biRW97aLY","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-C9Wu0MeN.js","utils-jWgu-6Qf.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DBD8f9qn.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-BGuX1ui5.js","snippetPresets-Evy63nQB.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BQHO1lnV.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-B6C8m-t_.js","shallow-BG4cT0fH.js","getApiPlaygroundDisplay-CgEPrE-D.js","CodeSnippet-CU8JyZ9N.js","CodeSnippets-BnxHU32T.js","Page-D6S0Yh6q.js","getPastedJson-CwiYOonh.js","icon-DYDpWmDf.js","MethodPill-C-J-l7_c.js","DuplicateIcon-B6ARwg9w.js","createIcon-Dsv4MtDq.js","DynamicMarkdown-CtasenyM.js","SectionHeading-YNcgYwjB.js","axios-vUo_bRtp.js","Markdown-CwLx6PAg.js","clsx-C3kuh_dz.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CmKHfscc.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-U3mI6Ljh.js"]}