{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-docs/compliance-center/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Create a new brand","siteUrl":"https://developers.sinch.com","llmstxt":{"title":"Sinch Developer Documentation","description":"LLMs.txt containing a map of all the documentation files for Sinch.","sections":[{"title":"Numbers API","description":"The Numbers API enables you to search for, view, and activate numbers. It's considered a precursor to other APIs in the Sinch product family. The numbers API can be used in tandem with any of our APIs that perform messaging or calling.","includeFiles":["docs/numbers/**/*.md","docs/numbers/**/*.yaml"],"excludeFiles":["docs/numbers/index.md"]},{"title":"Conversation API","description":"Send and receive messages globally on many popular channels with ease and confidence when using Sinch's Conversation API. Conversation API is the preferred API for sending mobile messages on SMS and other social channels with Sinch. It is a simple API with unified error messages, consistent request payloads, and common webhook payloads that are channel-agnostic.","includeFiles":["docs/conversation/**/*.md","docs/conversation/**/*.yaml"],"excludeFiles":["docs/conversation/index.md"]},{"title":"Voice API","description":"The Voice API works as a big telephony switch. The Voice API handles incoming phone calls (also known as incoming call “legs”), sets up outgoing phone calls (or outgoing call “legs”), and bridges the two. The incoming call leg may come in over a data connection (from a smartphone or web application using the Sinch SDKs) or through a local phone number (from the PSTN network). Similarly, the outgoing call leg can be over data (to another smartphone or web application using the Sinch SDKs) or the PSTN network.","includeFiles":["docs/voice/**/*.md","docs/voice/**/*.yaml"],"excludeFiles":["docs/voice/index.md"]},{"title":"Voice API v2","description":"The Voice API works as a big telephony switch. The Voice API handles incoming phone calls (also known as incoming call “legs”), sets up outgoing phone calls (or outgoing call “legs”), and bridges the two. The incoming call leg may come in over a data connection (from a smartphone or web application using the Sinch SDKs) or through a local phone number (from the PSTN network). Similarly, the outgoing call leg can be over data (to another smartphone or web application using the Sinch SDKs) or the PSTN network.","includeFiles":["docs/voice-2.0/**/*.md","docs/voice-2.0/**/*.yaml"],"excludeFiles":["docs/voice-2.0/index.md"]},{"title":"Verification API","description":"The Verification API is a platform for phone number verification. It consists of the API and different software development kits (the Sinch SDKs) that you integrate with your smartphone or web application and cloud based back-end services. Together they enable SMS, Flashcall, Phone Call and Data verification in your application.","includeFiles":["docs/verification/**/*.md","docs/verification/**/*.yaml"],"excludeFiles":["docs/verification/index.md"]},{"title":"Provisioning API","description":"Provisioning API allows you to programmatically set up your senders, accounts and templates on your favorite messaging platforms on the Conversation API. For now, you can create your first WhatsApp channel through Meta's Embedded sign up, you can configure your first SMS App and configure your webhooks. As development continues, we will be adding the most commonly used channels.","includeFiles":["docs/provisioning-api/**/*.md","docs/provisioning-api/**/*.json"],"excludeFiles":["docs/provisioning-api/index.md"]},{"title":"Elastic SIP Trunking API","description":"With Elastic SIP Trunking you can create and manage your SIP trunks and phone numbers programmatically.","includeFiles":["docs/est/**/*.md","docs/est/**/*.yaml"],"excludeFiles":["docs/est/index.md"]},{"title":"Fax API","description":"Send and receive HIPAA compliant faxes on our modern fax platform using our developer-friendly API.","includeFiles":["docs/fax/**/*.md","docs/fax/**/*.yaml"],"excludeFiles":["docs/fax/index.md"]},{"title":"In-app Voice and Video SDK","description":"The In-app Voice and Video SDK enables you to add voice and video calling capabilities directly into your mobile or web application using the Sinch SDKs.","includeFiles":["docs/in-app-calling/**/*.md"],"excludeFiles":["docs/in-app-calling/index.md"]},{"title":"Number Lookup API","description":"The Number Lookup API is designed to provide in-depth information about phone numbers, helping enterprises enhance their communication strategies and prevent fraud. By identifying the type of phone line (for example, mobile, landline, VoIP) and the associated carrier, the API allows businesses to optimize routing, reduce unnecessary costs, and improve customer engagement.","includeFiles":["docs/number-lookup-api-v2/**/*.md","docs/number-lookup-api-v2/**/*.yaml"],"excludeFiles":["docs/number-lookup-api-v2/index.md"]},{"title":"Functions","description":"Serverless compute for voice and messaging. Deploy your code and Sinch routes live calls and messages to it — no infrastructure to run.","includeFiles":["docs/functions/functions/**/*.md","docs/functions/concepts/**/*.md","docs/functions/reference/**/*.md"],"excludeFiles":["docs/functions/functions/index.md"]},{"title":"CLI","description":"One command line for every Sinch API and the full Functions lifecycle — scaffold, run locally, deploy, and manage.","includeFiles":["docs/functions/cli/**/*.md"],"excludeFiles":["docs/functions/cli/index.md"]}]},"description":"Learn how to create a new brand."},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"getting-started-with-creating-a-brand","__idx":0},"children":["Getting started with creating a brand"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The base URL for all endpoints is https://compliance.api.sinch.com (production server; data is processed and stored within Europe)."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All API endpoints described below require authentication. You can authenticate your requests using one of the following two methods for the Authorization header:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"text","header":{"controls":{"copy":{}}},"source":"    Bearer Token:\n    Authorization: Bearer <YourAccessToken>\n\n    Basic Authentication:\n    Authorization: Basic <YourBase64EncodedCredentials>\n","lang":"text"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Bearer tokens are obtained through the OAuth 2.0 client credentials flow. The username and password used to request the token are your Key ID and Key Secret from the Access keys section in the Sinch Customer Dashboard. Request the access token from https://auth.sinch.com/oauth2/token and send it on every subsequent call:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request POST 'https://auth.sinch.com/oauth2/token' \\\n--header 'Content-Type: application/x-www-form-urlencoded' \\\n--user '<YourKeyId>:<YourKeySecret>' \\\n--data-urlencode 'grant_type=client_credentials'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Read operations require the read scope; create, update, delete and other write operations require the write scope. The examples in this document use Bearer tokens, but every request can equally be authenticated with Basic authentication."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Webhook deliveries sent by Sinch are authenticated separately, with an HMAC signature in the X-Sinch-Signature header (see Callback Event Reception)."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"create-brand","__idx":1},"children":["Create Brand"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Creates a new brand in DRAFT status for the specified project. Draft brands are editable and are not validated against process-specific rules until a Brand Order is created. All fields relevant to the intended registration process should be populated before submitting an order."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The only field required by the schema is displayName (unique per projectId and market code). Every other field becomes required depending on the registration process you intend to order. The optional contentProvider flag indicates whether the brand is a Content Provider or a standard Brand, which determines the order types available to it; it cannot be changed after creation."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Note: The Idempotency-Key header is not supported in this version. Submitting the same request twice may create duplicate resources — deduplicate on your side."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request POST 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer <YourAccessToken>' \\\n--data-raw '{\n  \"displayName\": \"Acme Corp\",\n  \"legalCompanyName\": \"Acme Corporation\",\n  \"entityType\": \"CORPORATION\",\n  \"verticalType\": \"TECHNOLOGY\",\n  \"programType\": \"STANDARD\",\n  \"website\": \"https://www.acmecorp.com\",\n  \"companyEmail\": \"contact@acmecorp.com\",\n  \"country\": \"US\",\n  \"street\": \"123 Main Street\",\n  \"city\": \"New York\",\n  \"state\": \"New York\",\n  \"stateCode\": \"NY\",\n  \"zip\": \"10001\",\n  \"taxCountry\": \"US\",\n  \"federalTaxId\": \"123456789\",\n  \"contactEmail\": \"contact@acmecorp.com\",\n  \"contentProvider\": false\n}'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response — 201 Created"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n  \"displayName\": \"Acme Corp\",\n  \"status\": \"DRAFT\",\n  \"legalCompanyName\": \"Acme Corporation\",\n  \"entityType\": \"CORPORATION\",\n  \"verticalType\": \"TECHNOLOGY\",\n  \"programType\": \"STANDARD\",\n  \"website\": \"https://www.acmecorp.com\",\n  \"companyEmail\": \"contact@acmecorp.com\",\n  \"country\": \"US\",\n  \"street\": \"123 Main Street\",\n  \"city\": \"New York\",\n  \"state\": \"New York\",\n  \"stateCode\": \"NY\",\n  \"zip\": \"10001\",\n  \"taxCountry\": \"US\",\n  \"federalTaxId\": \"123456789\",\n  \"contactEmail\": \"contact@acmecorp.com\",\n  \"contentProvider\": false,\n  \"attachments\": [],\n  \"logs\": [],\n  \"channels\": [],\n  \"createTime\": \"2025-10-14T10:58:27.095235Z\",\n  \"updateTime\": \"2025-10-14T10:58:27.095235Z\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"list-brands","__idx":2},"children":["List Brands"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Returns a paginated list of brands for the specified project. You can filter by status (repeat the parameter to filter by several statuses), displayName, channelName, or contentProvider, and order the results with sort. Sortable fields are displayName, status, createTime and updateTime, using a comma-separated list with an optional :asc / :desc suffix (ascending by default)."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Pagination: use pageSize (default 20, maximum 100) and pageToken. The response carries the link to the following page in links.next, and the total number of matching resources in meta.totalCount. The same link is also returned in the RFC 8288 Link response header with rel=\"next\". The absence of a next link means you reached the last page."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands?status=DRAFT&sort=createTime:desc&pageSize=20' \\\n--header 'Authorization: Bearer <YourAccessToken>'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"brands\": [\n    {\n      \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n      \"displayName\": \"Acme Corp\",\n      \"status\": \"DRAFT\",\n      \"channels\": [],\n      \"createTime\": \"2025-10-14T10:58:27.095235Z\",\n      \"updateTime\": \"2025-10-14T10:58:27.095235Z\"\n    }\n  ],\n  \"links\": {\n    \"next\": \"https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands?pageToken=eyJsYXN0SWQiOiJiMWM3Y2NiZiJ9\"\n  },\n  \"meta\": {\n    \"totalCount\": 42\n  }\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"get-brand","__idx":3},"children":["Get Brand"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Retrieves the full details of a specific brand by its brandId."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee' \\\n--header 'Authorization: Bearer <YourAccessToken>'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n  \"displayName\": \"Acme Corp\",\n  \"status\": \"DRAFT\",\n  \"legalCompanyName\": \"Acme Corporation\",\n  \"entityType\": \"CORPORATION\",\n  \"verticalType\": \"TECHNOLOGY\",\n  \"programType\": \"STANDARD\",\n  \"website\": \"https://www.acmecorp.com\",\n  \"companyEmail\": \"contact@acmecorp.com\",\n  \"country\": \"US\",\n  \"street\": \"123 Main Street\",\n  \"city\": \"New York\",\n  \"state\": \"New York\",\n  \"stateCode\": \"NY\",\n  \"zip\": \"10001\",\n  \"taxCountry\": \"US\",\n  \"federalTaxId\": \"123456789\",\n  \"contactEmail\": \"contact@acmecorp.com\",\n  \"contentProvider\": false,\n  \"attachments\": [],\n  \"logs\": [],\n  \"channels\": [],\n  \"createTime\": \"2025-10-14T10:58:27.095235Z\",\n  \"updateTime\": \"2025-10-14T10:58:27.095235Z\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"patch-brand","__idx":4},"children":["Patch Brand"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Performs a partial update of an existing brand. Fields omitted from the request body remain unchanged. Fields explicitly set to null are treated as a request to clear the value; if a field does not support clearing, the request fails with 400 Bad Request. Useful for updating a single field without resending the entire brand payload."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Brands in both DRAFT and ACTIVE status can be patched."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Regarding attachments, the patch operation never deletes existing attachments; it only adds the ones supplied in attachmentInputs. Only the latest version of each attachment type is kept per brand."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request PATCH 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer <YourAccessToken>' \\\n--data-raw '{\n  \"displayName\": \"Acme Corp Patched\",\n  \"website\": \"https://www.acmecorp-new.com\",\n  \"street2\": null\n}'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n  \"displayName\": \"Acme Corp Patched\",\n  \"status\": \"DRAFT\",\n  \"legalCompanyName\": \"Acme Corporation\",\n  \"entityType\": \"CORPORATION\",\n  \"verticalType\": \"TECHNOLOGY\",\n  \"programType\": \"STANDARD\",\n  \"website\": \"https://www.acmecorp-new.com\",\n  \"companyEmail\": \"contact@acmecorp.com\",\n  \"country\": \"US\",\n  \"street\": \"456 Second Avenue\",\n  \"city\": \"New York\",\n  \"state\": \"New York\",\n  \"stateCode\": \"NY\",\n  \"zip\": \"10001\",\n  \"taxCountry\": \"US\",\n  \"federalTaxId\": \"123456789\",\n  \"contactEmail\": \"contact@acmecorp.com\",\n  \"contentProvider\": false,\n  \"attachments\": [],\n  \"logs\": [],\n  \"channels\": [],\n  \"createTime\": \"2025-10-14T10:58:27.095235Z\",\n  \"updateTime\": \"2025-10-14T11:05:00.000000Z\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"delete-brand","__idx":5},"children":["Delete Brand"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Permanently deletes a brand. The brand must exist and be accessible from the specified project. This action cannot be undone."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request DELETE 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee' \\\n--header 'Authorization: Bearer <YourAccessToken>'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"text","header":{"controls":{"copy":{}}},"source":"HTTP 204 No Content\n","lang":"text"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"import-brand","__idx":6},"children":["Import Brand"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Imports an existing brand from an external registry (TCR or GCH) into your Sinch project, so you can manage it through the Compliance Brands API. The import process creates a brand and an associated brand order automatically, copying all existing third-party metadata from the original registration. Depending on the source registry, an email is sent to the brand's registered contact address to approve or deny the import request."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["An imported brand cannot be directly modified through this API. For example, a brand imported via IMPORT_GCH_BRAND cannot have its Short Code registration details changed, although it can be extended to other services such as 10DLC. All maintenance and update operations remain the responsibility of the original registrant."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This operation is valid for:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["IMPORT_TCR_BRAND — import from TCR (10DLC / RCS registrations). externalBrandId must be the TCR Brand ID."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["IMPORT_GCH_BRAND — import from GCH (Short Code registrations). externalBrandId must be the GCH Account ID."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Required fields: displayName, importType and externalBrandId. callbackUrl is optional."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request — note the path is /us/brands/import"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request POST 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/import' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer <YourAccessToken>' \\\n--data-raw '{\n  \"displayName\": \"My Imported TCR Brand\",\n  \"importType\": \"IMPORT_TCR_BRAND\",\n  \"externalBrandId\": \"BTCR123456\",\n  \"callbackUrl\": \"https://webhook.site/d73ba377-90c3-4029-9a99-fe5a7d485b49\"\n}'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response — 201 Created"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n  \"brandOrderId\": \"212421442412\",\n  \"brandOwnerContactEmail\": \"co****@acmecorp.com\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"upload-attachment--file-upload","__idx":7},"children":["Upload Attachment — File Upload"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Uploads a file directly to a brand as an attachment. Use multipart/form-data with the binary file and the desired attachment type. Accepted types are COMPANY_LOGO and COMPANY_BANNER. Attachments are automatically associated with Brand Orders that require them, and only the latest version of each attachment type is kept per brand."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request POST 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee/attachments' \\\n--header 'Authorization: Bearer <YourAccessToken>' \\\n--form 'file=@\"/path/to/company-logo.png\"' \\\n--form 'attachmentType=\"COMPANY_LOGO\"'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response — 201 Created"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"attachmentId\": \"d1c7ccbf919d462f8587dec95a1b11ee\",\n  \"fileName\": \"company-logo.png\",\n  \"attachmentType\": \"COMPANY_LOGO\",\n  \"mimeType\": \"image/png\",\n  \"uploadStatus\": \"COMPLETED\",\n  \"createTime\": \"2025-10-14T11:00:00.000000Z\",\n  \"updateTime\": \"2025-10-14T11:00:00.000000Z\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The uploadStatus can be COMPLETED, WAITING (processing still ongoing) or FAILED."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"upload-attachment--by-url","__idx":8},"children":["Upload Attachment — By URL"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Instead of uploading a file directly, you can link an attachment by providing a publicly accessible URL via attachmentInputs in a PATCH request (the same array is also accepted when creating a brand). Sinch will fetch the file from the URL and associate it with the brand."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request PATCH 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer <YourAccessToken>' \\\n--data-raw '{\n  \"attachmentInputs\": [\n    {\n      \"fileName\": \"company-banner.jpg\",\n      \"attachmentType\": \"COMPANY_BANNER\",\n      \"fileUrl\": \"https://www.acmecorp.com/assets/banner.jpg\"\n    }\n  ]\n}'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n  \"displayName\": \"Acme Corp\",\n  \"status\": \"DRAFT\",\n  \"attachments\": [\n    {\n      \"attachmentId\": \"e1c7ccbf919d462f8587dec95a1b11ee\",\n      \"fileName\": \"company-banner.jpg\",\n      \"attachmentType\": \"COMPANY_BANNER\",\n      \"mimeType\": \"image/jpeg\",\n      \"uploadStatus\": \"COMPLETED\",\n      \"createTime\": \"2025-10-14T11:01:00.000000Z\",\n      \"updateTime\": \"2025-10-14T11:01:00.000000Z\"\n    }\n  ],\n  \"createTime\": \"2025-10-14T10:58:27.095235Z\",\n  \"updateTime\": \"2025-10-14T11:01:05.000000Z\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"download-attachment","__idx":9},"children":["Download Attachment"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Downloads the binary file for a specific attachment linked to a brand. The response is a binary stream (application/octet-stream)."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee/attachments/d1c7ccbf919d462f8587dec95a1b11ee' \\\n--header 'Authorization: Bearer <YourAccessToken>' \\\n--output company-logo.png\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"text","header":{"controls":{"copy":{}}},"source":"HTTP 200 OK\nContent-Type: application/octet-stream\n\n<binary file content saved to company-logo.png>\n","lang":"text"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"delete-attachment","__idx":10},"children":["Delete Attachment"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Removes an attachment from a brand. The attachment is permanently deleted and can no longer be associated with any brand orders."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request DELETE 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee/attachments/d1c7ccbf919d462f8587dec95a1b11ee' \\\n--header 'Authorization: Bearer <YourAccessToken>'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"text","header":{"controls":{"copy":{}}},"source":"HTTP 204 No Content\n","lang":"text"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"create-brand-order--10dlc-private-registration","__idx":11},"children":["Create Brand Order — 10DLC Private Registration"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Creates a Brand Order to register a brand for 10DLC (A2P SMS) traffic via TCR as a private brand (not shared with other CSPs). The fee is $5 USD and the brand receives the TENDLC channel on completion. The brand must have all required fields populated (company info, address, tax ID, contact email) before creating this order."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use US_10DLC_TCR_PUBLIC_BRAND_REGISTRATION instead if the brand is a public company. Standard and enhanced vetting are ordered with the *_STANDARD_BRAND_REGISTRATION and *_ENHANCED_BRAND_REGISTRATION processes, and US_10DLC_TCR_PRIVATE_MOCK / US_10DLC_TCR_PUBLIC_MOCK are free processes for testing the TCR integration without being granted the channel. See Reference — Brand Order processes for the full list."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Only metadataName is required in the body; callbackUrl is optional."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Note: The Idempotency-Key header is not supported in this version — submitting the same request twice may create duplicate orders."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request POST 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee/orders' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer <YourAccessToken>' \\\n--data-raw '{\n  \"metadataName\": \"US_10DLC_TCR_PRIVATE_BRAND_REGISTRATION\",\n  \"callbackUrl\": \"https://webhook.site/d73ba377-90c3-4029-9a99-fe5a7d485b49\"\n}'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response — 201 Created"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"brandOrderId\": \"212421442412\",\n  \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n  \"status\": \"NEW\",\n  \"metadataName\": \"US_10DLC_TCR_PRIVATE_BRAND_REGISTRATION\",\n  \"logs\": [\n    {\n      \"createTime\": \"2025-10-14T11:05:00.000000Z\",\n      \"message\": \"Brand order created.\",\n      \"brandCurrentState\": \"NEW\"\n    }\n  ],\n  \"channels\": [],\n  \"thirdPartyMetadata\": [],\n  \"pricing\": {\n    \"amount\": \"5.00\",\n    \"currencyCode\": \"USD\"\n  },\n  \"callbackUrl\": \"https://webhook.site/d73ba377-90c3-4029-9a99-fe5a7d485b49\",\n  \"createTime\": \"2025-10-14T11:05:00.000000Z\",\n  \"updateTime\": \"2025-10-14T11:05:00.000000Z\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"create-brand-order--short-code-gch","__idx":12},"children":["Create Brand Order — Short Code (GCH)"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Creates a Brand Order to register a brand for Short Code traffic via GCH. There is now a single unified process, US_SC_GCH: the specific GCH sub-process is derived automatically from the brand's programType field — STANDARD → standard process, GOVERNMENT → government process, CHARITY → charity process, POLITICAL → political process. The process is free of charge and grants the SHORT_CODE channel on completion. For Content Provider entities, use US_SC_GCH_CONTENT_PROVIDER."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The brand must include the Short Code-specific fields: firstName, lastName, phoneNumber (E.164), registrationCountry, registrationState and stateCode. Depending on the programType, additional fields are mandatory:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["POLITICAL — politicalToken (Campaign Verify token), politicalType and politicalUrl."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["GOVERNMENT — governmentWebsite and governmentType (plus governmentTypeOther when governmentType is OTHER)."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["CHARITY — charitableAccreditation."]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["scType"]}," (VANITY / RANDOM) and the free-text ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["scText"]}," apply to the legacy US_SC_REGISTRY process."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request POST 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee/orders' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer <YourAccessToken>' \\\n--data-raw '{\n  \"metadataName\": \"US_SC_GCH\",\n  \"callbackUrl\": \"https://webhook.site/d73ba377-90c3-4029-9a99-fe5a7d485b49\"\n}'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response — 201 Created"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"brandOrderId\": \"212421442413\",\n  \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n  \"status\": \"NEW\",\n  \"metadataName\": \"US_SC_GCH\",\n  \"logs\": [\n    {\n      \"createTime\": \"2025-10-14T11:06:00.000000Z\",\n      \"message\": \"Brand order created.\",\n      \"brandCurrentState\": \"NEW\"\n    }\n  ],\n  \"channels\": [],\n  \"thirdPartyMetadata\": [],\n  \"callbackUrl\": \"https://webhook.site/d73ba377-90c3-4029-9a99-fe5a7d485b49\",\n  \"createTime\": \"2025-10-14T11:06:00.000000Z\",\n  \"updateTime\": \"2025-10-14T11:06:00.000000Z\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"create-brand-order--10dlc-sole-proprietor","__idx":13},"children":["Create Brand Order — 10DLC Sole Proprietor"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Registers a brand as a Sole Proprietor for 10DLC messaging via TCR without an Employer Identification Number (EIN). The fee is $5.50 USD."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The brand must have a mobilePhoneNumber that is a valid US or CA number: when the order is created, a One-Time Password (OTP) is automatically sent by SMS to that number. The registration is only finalised once the OTP is submitted through the Verify OTP endpoint."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request POST 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee/orders' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer <YourAccessToken>' \\\n--data-raw '{\n  \"metadataName\": \"US_10DLC_TCR_SOLE_PROPRIETOR\",\n  \"callbackUrl\": \"https://webhook.site/d73ba377-90c3-4029-9a99-fe5a7d485b49\"\n}'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response — 201 Created"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"brandOrderId\": \"212421442414\",\n  \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n  \"status\": \"NEW\",\n  \"metadataName\": \"US_10DLC_TCR_SOLE_PROPRIETOR\",\n  \"logs\": [],\n  \"channels\": [],\n  \"thirdPartyMetadata\": [],\n  \"pricing\": {\n    \"amount\": \"5.50\",\n    \"currencyCode\": \"USD\"\n  },\n  \"callbackUrl\": \"https://webhook.site/d73ba377-90c3-4029-9a99-fe5a7d485b49\",\n  \"createTime\": \"2025-10-14T11:07:00.000000Z\",\n  \"updateTime\": \"2025-10-14T11:07:00.000000Z\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"list-brand-orders--all","__idx":14},"children":["List Brand Orders — All"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Returns a paginated list of all brand orders across all brands in the specified project. You can filter by status (repeatable) or metadataName, and sort by metadataName, status, createTime or updateTime. Pagination follows the same pageSize / pageToken + links.next / meta.totalCount model as List Brands."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/orders?pageSize=20&sort=createTime:desc' \\\n--header 'Authorization: Bearer <YourAccessToken>'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"orders\": [\n    {\n      \"brandOrderId\": \"212421442412\",\n      \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n      \"status\": \"NEW\",\n      \"metadataName\": \"US_10DLC_TCR_PRIVATE_BRAND_REGISTRATION\",\n      \"createTime\": \"2025-10-14T11:05:00.000000Z\",\n      \"updateTime\": \"2025-10-14T11:05:00.000000Z\"\n    },\n    {\n      \"brandOrderId\": \"212421442413\",\n      \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n      \"status\": \"NEW\",\n      \"metadataName\": \"US_SC_GCH\",\n      \"createTime\": \"2025-10-14T11:06:00.000000Z\",\n      \"updateTime\": \"2025-10-14T11:06:00.000000Z\"\n    }\n  ],\n  \"links\": {},\n  \"meta\": {\n    \"totalCount\": 2\n  }\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"list-brand-orders--by-brand","__idx":15},"children":["List Brand Orders — By Brand"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Returns a paginated list of orders for a specific brand. Supports the same status, metadataName, sort, pageSize and pageToken parameters as the project-wide listing."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee/orders?status=NEW' \\\n--header 'Authorization: Bearer <YourAccessToken>'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"orders\": [\n    {\n      \"brandOrderId\": \"212421442412\",\n      \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n      \"status\": \"NEW\",\n      \"metadataName\": \"US_10DLC_TCR_PRIVATE_BRAND_REGISTRATION\",\n      \"createTime\": \"2025-10-14T11:05:00.000000Z\",\n      \"updateTime\": \"2025-10-14T11:05:00.000000Z\"\n    }\n  ],\n  \"links\": {},\n  \"meta\": {\n    \"totalCount\": 1\n  }\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"get-brand-order","__idx":16},"children":["Get Brand Order"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Retrieves the full details of a specific brand order, including its current status, associated channels, third-party metadata (e.g., TCR brand ID), pricing, and status history logs."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee/orders/212421442412' \\\n--header 'Authorization: Bearer <YourAccessToken>'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"brandOrderId\": \"212421442412\",\n  \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n  \"status\": \"COMPLETED\",\n  \"metadataName\": \"US_10DLC_TCR_PRIVATE_BRAND_REGISTRATION\",\n  \"logs\": [\n    {\n      \"createTime\": \"2025-10-14T11:05:00.000000Z\",\n      \"message\": \"Brand order created.\",\n      \"brandCurrentState\": \"NEW\"\n    },\n    {\n      \"createTime\": \"2025-10-14T11:10:00.000000Z\",\n      \"brandCurrentState\": \"COMPLETED\",\n      \"brandPreviousState\": \"PENDING\"\n    }\n  ],\n  \"channels\": [\"TENDLC\"],\n  \"thirdPartyMetadata\": [\n    {\n      \"name\": \"TCR_BRAND_ID\",\n      \"value\": \"BTCR789012\"\n    }\n  ],\n  \"pricing\": {\n    \"amount\": \"5.00\",\n    \"currencyCode\": \"USD\"\n  },\n  \"callbackUrl\": \"https://webhook.site/d73ba377-90c3-4029-9a99-fe5a7d485b49\",\n  \"createTime\": \"2025-10-14T11:05:00.000000Z\",\n  \"updateTime\": \"2025-10-14T11:10:00.000000Z\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"delete-brand-order","__idx":17},"children":["Delete Brand Order"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Deletes a brand order. This permanently removes the order record. Use this operation with caution — it cannot be undone."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request DELETE 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee/orders/212421442412' \\\n--header 'Authorization: Bearer <YourAccessToken>'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"text","header":{"controls":{"copy":{}}},"source":"HTTP 204 No Content\n","lang":"text"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"retry-brand-order","__idx":18},"children":["Retry Brand Order"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Retries a brand order that is in INCOMPLETE or NEW status. When retried, the order fetches the latest brand properties and attachments and reapplies all validations. Use this when you have updated the brand after an order was marked as INCOMPLETE due to missing or incorrect data. No request body is needed."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request — the action is now a sub-resource, /orders/{orderId}/retry"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request POST 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee/orders/212421442412/retry' \\\n--header 'Authorization: Bearer <YourAccessToken>'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"brandOrderId\": \"212421442412\",\n  \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n  \"status\": \"NEW\",\n  \"metadataName\": \"US_10DLC_TCR_PRIVATE_BRAND_REGISTRATION\",\n  \"logs\": [\n    {\n      \"createTime\": \"2025-10-14T11:20:00.000000Z\",\n      \"brandCurrentState\": \"NEW\",\n      \"brandPreviousState\": \"INCOMPLETE\"\n    }\n  ],\n  \"channels\": [],\n  \"thirdPartyMetadata\": [],\n  \"pricing\": {\n    \"amount\": \"5.00\",\n    \"currencyCode\": \"USD\"\n  },\n  \"callbackUrl\": \"https://webhook.site/d73ba377-90c3-4029-9a99-fe5a7d485b49\",\n  \"createTime\": \"2025-10-14T11:05:00.000000Z\",\n  \"updateTime\": \"2025-10-14T11:20:00.000000Z\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"resend-brand-confirmation-email","__idx":19},"children":["Resend Brand Confirmation Email"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Resends the brand registration confirmation email to the end-customer (brand owner contact). Certain product verification processes require the end-customer's approval by email to complete the brand registration; if the email was lost or never received, call this endpoint to trigger a resend."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The order must be in PENDING status, and this functionality is currently available only for 10DLC / RCS (TCR) registration processes."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request POST 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee/orders/212421442412/resendConfirmationEmail' \\\n--header 'Authorization: Bearer <YourAccessToken>'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"brandOrderId\": \"212421442412\",\n  \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n  \"status\": \"PENDING\",\n  \"metadataName\": \"US_10DLC_TCR_PRIVATE_BRAND_REGISTRATION\",\n  \"logs\": [],\n  \"channels\": [],\n  \"thirdPartyMetadata\": [],\n  \"pricing\": {\n    \"amount\": \"5.00\",\n    \"currencyCode\": \"USD\"\n  },\n  \"callbackUrl\": \"https://webhook.site/d73ba377-90c3-4029-9a99-fe5a7d485b49\",\n  \"createTime\": \"2025-10-14T11:05:00.000000Z\",\n  \"updateTime\": \"2025-10-14T11:25:00.000000Z\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"verify-otp--sole-proprietor","__idx":20},"children":["Verify OTP — Sole Proprietor"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Verifies the One-Time Password (OTP) received on the brand's registered mobile phone number to complete a US_10DLC_TCR_SOLE_PROPRIETOR order. After the order is created, the OTP is sent automatically by SMS to the brand's mobilePhoneNumber; submit the code here to finalise the registration."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Requirement: to receive the OTP, the brand's mobilePhoneNumber must be a valid United States (US) or Canadian (CA) phone number."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request POST 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee/orders/212421442414/verifyOtp' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer <YourAccessToken>' \\\n--data-raw '{\n  \"otp\": \"27FUY2\"\n}'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"brandOrderId\": \"212421442414\",\n  \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n  \"status\": \"COMPLETED\",\n  \"metadataName\": \"US_10DLC_TCR_SOLE_PROPRIETOR\",\n  \"logs\": [],\n  \"channels\": [\"TENDLC\"],\n  \"thirdPartyMetadata\": [\n    {\n      \"name\": \"TCR_BRAND_ID\",\n      \"value\": \"B123ABC\"\n    }\n  ],\n  \"pricing\": {\n    \"amount\": \"5.50\",\n    \"currencyCode\": \"USD\"\n  },\n  \"callbackUrl\": \"https://webhook.site/d73ba377-90c3-4029-9a99-fe5a7d485b49\",\n  \"createTime\": \"2025-10-14T11:07:00.000000Z\",\n  \"updateTime\": \"2025-10-14T11:10:00.000000Z\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"resend-otp--sole-proprietor","__idx":21},"children":["Resend OTP — Sole Proprietor"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Triggers a resend of the One-Time Password required to verify a US_10DLC_TCR_SOLE_PROPRIETOR order. Use it when the initial OTP expired or was never received. The new OTP is sent to the brand's registered mobilePhoneNumber, which must be a valid US or CA number. No request body is needed."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request POST 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee/orders/212421442414/resendOtp' \\\n--header 'Authorization: Bearer <YourAccessToken>'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"brandOrderId\": \"212421442414\",\n  \"brandId\": \"b1c7ccbf919d462f8587dec95a1b11ee\",\n  \"status\": \"PENDING\",\n  \"metadataName\": \"US_10DLC_TCR_SOLE_PROPRIETOR\",\n  \"logs\": [],\n  \"channels\": [],\n  \"thirdPartyMetadata\": [],\n  \"pricing\": {\n    \"amount\": \"5.50\",\n    \"currencyCode\": \"USD\"\n  },\n  \"callbackUrl\": \"https://webhook.site/d73ba377-90c3-4029-9a99-fe5a7d485b49\",\n  \"createTime\": \"2025-10-14T11:07:00.000000Z\",\n  \"updateTime\": \"2025-10-14T11:12:00.000000Z\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"get-callback-configuration","__idx":22},"children":["Get Callback Configuration"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Retrieves the current callback configuration for a project. The HMAC secret used to sign callback events is masked — only the last characters are visible, returned in hmacSecretMask. To obtain a full secret value, either set your own with Set Callback HMAC Secret or generate one with Rotate Callback HMAC Secret."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/callbackConfig' \\\n--header 'Authorization: Bearer <YourAccessToken>'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"projectId\": \"a1b2c3d4e5f67890abcdef1234567890\",\n  \"hmacSecretMask\": \"••••••1b11ee\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"set-callback-hmac-secret","__idx":23},"children":["Set Callback HMAC Secret"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Sets a customer-provided HMAC secret for the project. The full secret is returned once in the response body — this is the only time it is visible in plain text, so store it securely straight away. After updating the secret, all incoming callbacks are signed with the new value; update your webhook handler accordingly."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request PATCH 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/callbackConfig' \\\n--header 'Content-Type: application/json' \\\n--header 'Authorization: Bearer <YourAccessToken>' \\\n--data-raw '{\n  \"hmacSecret\": \"myNewSecretKey456\"\n}'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"projectId\": \"a1b2c3d4e5f67890abcdef1234567890\",\n  \"hmacSecret\": \"myNewSecretKey456\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"rotate-callback-hmac-secret","__idx":24},"children":["Rotate Callback HMAC Secret"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Asks Sinch to generate a new, cryptographically random HMAC secret for the project and replace the existing one. The full secret is returned once in the response body and never again in plain text — store it securely immediately. Use this instead of Set Callback HMAC Secret when you do not want to supply your own value."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"curl --location --request POST 'https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/callbackConfig/rotate' \\\n--header 'Authorization: Bearer <YourAccessToken>'\n","lang":"shell"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"projectId\": \"a1b2c3d4e5f67890abcdef1234567890\",\n  \"hmacSecret\": \"f9a3dd714c2e4f87b901abc123def456\"\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"callback-event-reception","__idx":25},"children":["Callback Event Reception"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When you provide a callbackUrl in a Create Brand Order or Import Brand request, Sinch will send an HTTP POST to that URL every time the brand order status changes. The URL must be a valid URL and reachable from Sinch."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The callback payload follows the CloudEvents v1.0 specification (structured content mode, Content-Type: application/json) with the required envelope fields specversion, id, source, type and time. The type field uses the reverse-DNS prefix com.sinch.registrations.brand.order.v1 and the event version is its last component. Sinch signs each request with an HMAC-SHA256 signature computed over the request body using the project's HMAC secret, and sends it in the X-Sinch-Signature header — validate it on your side to ensure the event is authentic."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Your handler is expected to ingest the event and respond with 200 OK; run your business logic asynchronously outside the callback request. Delivery order is not guaranteed, so the handler must tolerate out-of-order or unexpected events and can call Get Brand Order to fetch the latest state. Treat events with the same source + id as duplicates."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Typical status progression:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["NEW → brand order created and queued"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["PENDING → order is under review; a confirmation email (or an OTP, for Sole Proprietor) may be sent to the brand owner"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["COMPLETED → brand is approved and channels are activated"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["REJECTED / INCOMPLETE → action required; check the comments field for details"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["PENDING_REVIEW → the brand/order was updated after being INCOMPLETE and is waiting for a new review"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["ARCHIVED → the order was cancelled and can no longer be updated or submitted"]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Callback Payload Example"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"text","header":{"controls":{"copy":{}}},"source":"POST https://webhook.site/d73ba377-90c3-4029-9a99-fe5a7d485b49\nContent-Type: application/json\nX-Sinch-Signature: abc123...\n","lang":"text"},"children":[]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"specversion\": \"1.0\",\n  \"id\": \"ee34ccbf919d462f8587dec95a1b11ee\",\n  \"source\": \"https://compliance.api.sinch.com/v1/projects/a1b2c3d4e5f67890abcdef1234567890/us/brands/b1c7ccbf919d462f8587dec95a1b11ee/orders/212421442412\",\n  \"type\": \"com.sinch.registrations.brand.order.v1.BrandOrderStatusUpdate\",\n  \"time\": \"2025-10-14T11:10:00.000000Z\",\n  \"data\": {\n    \"projectId\": \"a1b2c3d4e5f67890abcdef1234567890\",\n    \"resourceId\": \"212421442412\",\n    \"resourceType\": \"US_10DLC_TCR_PRIVATE_BRAND_REGISTRATION\",\n    \"status\": \"COMPLETED\",\n    \"comments\": \"Brand registration approved by TCR.\"\n  }\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To validate the signature, compute HMAC-SHA256 of the raw request body using your hmacSecret and compare it to the value in X-Sinch-Signature."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"error-responses","__idx":26},"children":["Error Responses"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Errors are returned as RFC 7807 problem details with Content-Type: application/problem+json. The body always contains type (URI identifying the problem type) and title (short summary), plus either a structured errors list with a JSON pointer per offending field, or a plain-text detail."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Status"},"children":["Status"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Meaning"},"children":["Meaning"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["400"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["BAD_REQUEST — any validation error."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["401"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["UNAUTHENTICATED — missing or invalid credentials. A WWW-Authenticate header is returned."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["403"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["PERMISSION_DENIED — the authenticated user cannot perform this operation."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["404"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["NOT_FOUND — the project, brand, order or attachment does not exist."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["429"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["RESOURCE_EXHAUSTED — rate limit exceeded."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["INTERNAL — internal server error, typically a server bug."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Field-level validation error"," ","{"," ","\"type\": \"https://developers.sinch.com/docs/errors/registry/validation-error\","," ","\"title\": \"Validation Error\","," ","\"errors\": ["," ","{"," ","\"pointer\": \"/displayName\","," ","\"detail\": \"Brand Name already exists for this brand type\""," ","}"," ","]"," ","}"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Plain-text error"," ","{"," ","\"type\": \"https://developers.sinch.com/docs/errors/registry/not-found\","," ","\"title\": \"Not Found\","," ","\"detail\": \"Project not found\""," ","}"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"reference--enumerations","__idx":27},"children":["Reference — Enumerations"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Brand status (status): DRAFT, ACTIVE, ARCHIVED."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Brand order status (status): NEW, PENDING, PENDING_REVIEW, REJECTED, INCOMPLETE, COMPLETED, ARCHIVED."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Channel (channels): TENDLC (10DLC, via TCR), RCS (via TCR), SHORT_CODE (via GCH)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Entity type: CORPORATION, LLC, PARTNERSHIP, S_CORPORATION."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Program type: STANDARD, GOVERNMENT, CHARITY, POLITICAL."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Vertical type: PROFESSIONAL, REAL_ESTATE, HEALTHCARE, HUMAN_RESOURCES, ENERGY, ENTERTAINMENT, RETAIL, TRANSPORTATION, AGRICULTURE, INSURANCE, POSTAL, EDUCATION, HOSPITALITY, FINANCIAL, POLITICAL, GAMBLING, LEGAL, CONSTRUCTION, NGO, MANUFACTURING, GOVERNMENT, TECHNOLOGY, COMMUNICATION."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Political / government type: FEDERAL, LOCAL, TRIBAL, STATE, OTHER."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Short Code type (scType): VANITY, RANDOM."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Attachment type: COMPANY_LOGO, COMPANY_BANNER. Upload status: COMPLETED, WAITING, FAILED."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Import type: IMPORT_TCR_BRAND, IMPORT_GCH_BRAND."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"reference--brand-order-processes-metadataname","__idx":28},"children":["Reference — Brand Order processes (metadataName)"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Values accepted when creating an order:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Short Code (GCH): US_SC_GCH, US_SC_GCH_CONTENT_PROVIDER."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["10DLC (TCR): US_10DLC_TCR_PRIVATE_BRAND_REGISTRATION, US_10DLC_TCR_PUBLIC_BRAND_REGISTRATION, US_10DLC_TCR_PRIVATE_BRAND_UPDATE, US_10DLC_TCR_PUBLIC_BRAND_UPDATE, US_10DLC_TCR_PRIVATE_MOCK, US_10DLC_TCR_PUBLIC_MOCK, US_10DLC_TCR_SOLE_PROPRIETOR, US_10DLC_TCR_PRIVATE_STANDARD_BRAND_REGISTRATION, US_10DLC_TCR_PRIVATE_ENHANCED_BRAND_REGISTRATION, US_10DLC_TCR_PUBLIC_STANDARD_BRAND_REGISTRATION, US_10DLC_TCR_PUBLIC_ENHANCED_BRAND_REGISTRATION."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["RCS (TCR): US_RCS_TCR_PRIVATE_BRAND_REGISTRATION, US_RCS_TCR_PUBLIC_BRAND_REGISTRATION, US_RCS_TCR_UPDATE_ASSETS."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["US_SC_REGISTRY can appear in existing orders and in filters, but it is a legacy read-only process and cannot be used for new orders."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Indicative fees defined in the contract: $5 for private/public 10DLC brand registration, $5.50 for Sole Proprietor, $50 ($45 with an existing TCR ID) for standard vetting, $105 for enhanced vetting; brand update, mock and GCH Short Code processes are free of charge. For confirmed pricing, consult your Account Manager or the Sinch Customer Dashboard."]}]},"headings":[{"value":"Getting started with creating a brand","id":"getting-started-with-creating-a-brand","depth":1},{"value":"Create Brand","id":"create-brand","depth":2},{"value":"List Brands","id":"list-brands","depth":2},{"value":"Get Brand","id":"get-brand","depth":2},{"value":"Patch Brand","id":"patch-brand","depth":2},{"value":"Delete Brand","id":"delete-brand","depth":2},{"value":"Import Brand","id":"import-brand","depth":2},{"value":"Upload Attachment — File Upload","id":"upload-attachment--file-upload","depth":2},{"value":"Upload Attachment — By URL","id":"upload-attachment--by-url","depth":2},{"value":"Download Attachment","id":"download-attachment","depth":2},{"value":"Delete Attachment","id":"delete-attachment","depth":2},{"value":"Create Brand Order — 10DLC Private Registration","id":"create-brand-order--10dlc-private-registration","depth":2},{"value":"Create Brand Order — Short Code (GCH)","id":"create-brand-order--short-code-gch","depth":2},{"value":"Create Brand Order — 10DLC Sole Proprietor","id":"create-brand-order--10dlc-sole-proprietor","depth":2},{"value":"List Brand Orders — All","id":"list-brand-orders--all","depth":2},{"value":"List Brand Orders — By Brand","id":"list-brand-orders--by-brand","depth":2},{"value":"Get Brand Order","id":"get-brand-order","depth":2},{"value":"Delete Brand Order","id":"delete-brand-order","depth":2},{"value":"Retry Brand Order","id":"retry-brand-order","depth":2},{"value":"Resend Brand Confirmation Email","id":"resend-brand-confirmation-email","depth":2},{"value":"Verify OTP — Sole Proprietor","id":"verify-otp--sole-proprietor","depth":3},{"value":"Resend OTP — Sole Proprietor","id":"resend-otp--sole-proprietor","depth":2},{"value":"Get Callback Configuration","id":"get-callback-configuration","depth":2},{"value":"Set Callback HMAC Secret","id":"set-callback-hmac-secret","depth":2},{"value":"Rotate Callback HMAC Secret","id":"rotate-callback-hmac-secret","depth":2},{"value":"Callback Event Reception","id":"callback-event-reception","depth":2},{"value":"Error Responses","id":"error-responses","depth":2},{"value":"Reference — Enumerations","id":"reference--enumerations","depth":2},{"value":"Reference — Brand Order processes (metadataName)","id":"reference--brand-order-processes-metadataname","depth":3}],"frontmatter":{"seo":{"title":"Create a new brand","description":"Learn how to create a new brand."},"excludeFromSearch":true},"lastModified":"2026-07-30T12:23:19.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/docs/compliance-center/getting-started/create-brands","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}