Skip to content

API reference

Add site domain

domains.AddSiteDomainWriteMember delegation

Connect a custom hostname to a published website and begin certificate setup. The domain owner must add the required DNS records.

POST/v1/operations/domains.AddSiteDomain
On this page

Access & visibility

Allow domains.AddSiteDomain on your API key.

Acting member required. Send Brigg-Act-As with an approved member account ID. The key supplies permissions; the member selects whose data is used.

The selected member must be active and approved by the credential. This selects whose private data is used; the credential supplies permissions. Private ownership and project boundaries still apply.

Set up authentication · Choose permissions

Request fields

Send a JSON object with the following fields. Required fields must be included; omit optional fields you do not need.

bundle_idstringRequired

Select a website and use its content_id. This is the website identity, not a domain hostname or workspace ID. workspace.ListBundles.

At least 1 character.

hostnamestringRequired

A hostname the customer controls the DNS of (www.acme.no).

At least 1 character. At most 253 characters.

Response

Returns 200 OK with a JSON body.

itemnull or objectRequired

The custom hostname as listed on the bundle, or null when the row could not be read back after the insert.

AddSiteDomainItem

Variant 2

hoststringRequired

Custom hostname connected to the website.

cert_statusstringRequired

Current certificate provisioning state.

validation_namenull or stringRequired

DNS name required to validate certificate ownership, when validation is pending.

validation_valuenull or stringRequired

DNS value required to validate certificate ownership, when validation is pending.

last_errornull or stringRequired

Most recent setup failure, or null when none is recorded.

created_atnumberRequired

Time this domain configuration was created, in Unix milliseconds.

issued_atnull or numberRequired

Time the certificate was issued, in Unix milliseconds.

Errors & retries

Set BRIGG_REQUEST_ID once for each logical action. The samples send it as Idempotency-Key. Reuse the same value and body on retries, including after a timeout; a missing response does not prove the action failed.

For rate limits, follow the server’s retry guidance and back off. See HTTP errors and safe retries and limits.

HTTP status Code What to do
400 invalid_json Send a JSON object with Content-Type: application/json.
400 invalid_input Check the request fields and types. Supply a stable Idempotency-Key containing 1–200 characters.
401 invalid_key The workspace API key is missing, invalid or revoked.
403 forbidden Check the key’s operation and resource grants. Supply Brigg-Act-As with a member authorized by the key’s delegation grant. The selected member must be active and approved by the credential. This selects whose private data is used; the credential supplies permissions. Private ownership and project boundaries still apply.
404 not_found The requested operation or resource is not available to this credential.
429 rate_limited Wait for Retry-After before retrying. Reuse the original Idempotency-Key.

Next steps

Download OpenAPI · Versioning & retirement

JSON schemas

Use the complete schemas for validation or client generation.

Full request JSON schema
{
  "type": "object",
  "properties": {
    "bundle_id": {
      "type": "string",
      "minLength": 1,
      "description": "Select a website and use its content_id. This is the website identity, not a domain hostname or workspace ID. [workspace.ListBundles](/developers/reference/workspace/ListBundles)."
    },
    "hostname": {
      "type": "string",
      "minLength": 1,
      "maxLength": 253,
      "description": "A hostname the customer controls the DNS of (www.acme.no)."
    }
  },
  "required": [
    "bundle_id",
    "hostname"
  ],
  "additionalProperties": false,
  "examples": [
    {
      "bundle_id": "e_example",
      "hostname": "www.example.com"
    }
  ]
}
Full response JSON schema
{
  "type": "object",
  "properties": {
    "item": {
      "description": "The custom hostname as listed on the bundle, or null when the row could not be read back after the insert.",
      "title": "AddSiteDomainItem",
      "anyOf": [
        {
          "type": "null"
        },
        {
          "type": "object",
          "properties": {
            "host": {
              "type": "string",
              "description": "Custom hostname connected to the website."
            },
            "cert_status": {
              "type": "string",
              "description": "Current certificate provisioning state."
            },
            "validation_name": {
              "anyOf": [
                {
                  "type": "null"
                },
                {
                  "type": "string"
                }
              ],
              "description": "DNS name required to validate certificate ownership, when validation is pending."
            },
            "validation_value": {
              "anyOf": [
                {
                  "type": "null"
                },
                {
                  "type": "string"
                }
              ],
              "description": "DNS value required to validate certificate ownership, when validation is pending."
            },
            "last_error": {
              "anyOf": [
                {
                  "type": "null"
                },
                {
                  "type": "string"
                }
              ],
              "description": "Most recent setup failure, or null when none is recorded."
            },
            "created_at": {
              "type": "number",
              "description": "Time this domain configuration was created, in Unix milliseconds."
            },
            "issued_at": {
              "anyOf": [
                {
                  "type": "null"
                },
                {
                  "type": "number"
                }
              ],
              "description": "Time the certificate was issued, in Unix milliseconds."
            }
          },
          "required": [
            "host",
            "cert_status",
            "validation_name",
            "validation_value",
            "last_error",
            "created_at",
            "issued_at"
          ],
          "additionalProperties": false
        }
      ]
    }
  },
  "required": [
    "item"
  ],
  "additionalProperties": false,
  "examples": [
    {
      "item": null
    }
  ]
}

Search by operation name or what you want to build.

Use arrow keys to browse. Enter opens a result.