Skip to main content
Api

Tenant Host

Get the authenticated runtime tenant manifest

GET
/runtime/manifest
AuthorizationBearer <token>

API key issued to a Sonzai project. Format: Bearer sk_....

In: header

Response Body

application/json

application/problem+json

curl -X GET "https://loading/api/v1/runtime/manifest"
{
  "property1": null,
  "property2": null
}
{
  "$schema": "/api/v1/schemas/ErrorModel.json",
  "detail": "Property foo is required but is missing.",
  "errors": [
    {
      "location": "string",
      "message": "string",
      "value": null
    }
  ],
  "instance": "https://example.com/error-log/abc123",
  "status": 400,
  "title": "Bad Request",
  "type": "https://example.com/errors/example"
}

Update the visitor privacy notice for the authenticated runtime

PUT
/runtime/widget-consent
AuthorizationBearer <token>

API key issued to a Sonzai project. Format: Bearer sk_....

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/problem+json

curl -X PUT "https://loading/api/v1/runtime/widget-consent" \  -H "Content-Type: application/json" \  -d '{    "text": "string",    "version": "string"  }'
{
  "$schema": "/api/v1/schemas/BrowserManifestVersionOutputBody.json",
  "manifest": {
    "branding": {
      "colors": {
        "accent": "string",
        "background": "string",
        "primary": "string"
      },
      "favicon_url": "string",
      "font_family": "string",
      "logo_url": "string",
      "product_name": "string",
      "terminology": {
        "property1": "string",
        "property2": "string"
      }
    },
    "default_project_id": "string",
    "demo": {
      "auto_reply": true,
      "buyer_persona": "string"
    },
    "experience": {
      "dashboard": {
        "focus_label": "string",
        "metrics": [
          {
            "description": "string",
            "format": "string",
            "id": "string",
            "label": "string",
            "tone": "string"
          }
        ]
      },
      "forms": [
        {
          "description": "string",
          "fields": [
            {
              "description": "string",
              "key": "string",
              "label": "string",
              "options": [
                "string"
              ],
              "required": true,
              "type": "string"
            }
          ],
          "id": "string",
          "label": "string"
        }
      ],
      "home": {
        "description": "string",
        "eyebrow": "string",
        "title": "string"
      },
      "pack": "string",
      "pack_version": "string",
      "preset": "string",
      "workspaces": [
        {
          "description": "string",
          "id": "string",
          "label": "string",
          "order": 0,
          "required_capabilities": [
            "string"
          ],
          "surface": "string"
        }
      ]
    },
    "integrations": {
      "property1": {
        "actions": [
          "string"
        ],
        "display_name": "string",
        "enabled": true
      },
      "property2": {
        "actions": [
          "string"
        ],
        "display_name": "string",
        "enabled": true
      }
    },
    "locale": "string",
    "modules": [
      "string"
    ],
    "qualification_fields": [
      {
        "description": "string",
        "key": "string",
        "label": "string",
        "required": true
      }
    ],
    "sales_copilot": {
      "action_policies": [
        {
          "action_id": "string",
          "approval": "string",
          "draft_only": true,
          "manager_roles": [
            "string"
          ]
        }
      ],
      "actions": [
        {
          "default_approval": "string",
          "external_effect": true,
          "id": "string",
          "kind": "string",
          "label": "string"
        }
      ],
      "branding": {
        "accent_color": "string",
        "logo_url": "string",
        "primary_color": "string",
        "product_name": "string"
      },
      "connections": [
        {
          "display_name": "string",
          "id": "string",
          "kind": "string",
          "state": "string"
        }
      ],
      "destinations": [
        {
          "id": "string",
          "includes": [
            "string"
          ],
          "label": "string",
          "manager_view": [
            "string"
          ]
        }
      ],
      "draft_only": true,
      "knowledge_policy": {
        "reject_expired_sources": true,
        "require_approved_sources": true,
        "require_citations": true
      },
      "runtime_v2_enabled": true,
      "schema_version": 0,
      "solution_pack_id": "string",
      "solution_pack_version": "string",
      "structured_catalog": {
        "source": {
          "id": "string",
          "is_demo": true,
          "kind": "string",
          "label": "string",
          "template_id": "string"
        },
        "view": {
          "card_fields": [
            {
              "format": "string",
              "key": "string",
              "label": "string",
              "unit": "string"
            }
          ],
          "description": "string",
          "detail_fields": [
            {
              "format": "string",
              "key": "string",
              "label": "string",
              "unit": "string"
            }
          ],
          "filter_fields": [
            {
              "key": "string",
              "label": "string",
              "options": [
                {
                  "label": "string",
                  "value": "string"
                }
              ]
            }
          ],
          "group_by": "string",
          "item_type": "string",
          "layout": "string",
          "plural": "string",
          "show_bookings": true,
          "show_freshness": true,
          "singular": "string",
          "title": "string"
        }
      },
      "workflows": [
        {
          "goal": "string",
          "id": "string",
          "preview_scenario": "string",
          "required_context": [
            "string"
          ]
        }
      ]
    },
    "schema_version": 0,
    "surfaces": [
      {
        "enabled": true,
        "label": "string",
        "module": "string",
        "order": 0,
        "section": "string"
      }
    ],
    "visitor_allowed_origins": [
      "string"
    ],
    "widget": {
      "agent_id": "string",
      "allowed_hostnames": [
        "string"
      ],
      "consent": {
        "text": "string",
        "version": "string"
      },
      "enabled": true,
      "env": "string",
      "site_key": "string",
      "tenant_slug": "string",
      "theme": {
        "property1": "string",
        "property2": "string"
      }
    }
  },
  "tenant_id": "string",
  "version": 0
}
{
  "$schema": "/api/v1/schemas/ErrorModel.json",
  "detail": "Property foo is required but is missing.",
  "errors": [
    {
      "location": "string",
      "message": "string",
      "value": null
    }
  ],
  "instance": "https://example.com/error-log/abc123",
  "status": 400,
  "title": "Bad Request",
  "type": "https://example.com/errors/example"
}

Update approved website origins for the authenticated runtime

PUT
/runtime/widget-origins
AuthorizationBearer <token>

API key issued to a Sonzai project. Format: Bearer sk_....

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/problem+json

curl -X PUT "https://loading/api/v1/runtime/widget-origins" \  -H "Content-Type: application/json" \  -d '{    "origins": [      "string"    ]  }'
{
  "$schema": "/api/v1/schemas/BrowserManifestVersionOutputBody.json",
  "manifest": {
    "branding": {
      "colors": {
        "accent": "string",
        "background": "string",
        "primary": "string"
      },
      "favicon_url": "string",
      "font_family": "string",
      "logo_url": "string",
      "product_name": "string",
      "terminology": {
        "property1": "string",
        "property2": "string"
      }
    },
    "default_project_id": "string",
    "demo": {
      "auto_reply": true,
      "buyer_persona": "string"
    },
    "experience": {
      "dashboard": {
        "focus_label": "string",
        "metrics": [
          {
            "description": "string",
            "format": "string",
            "id": "string",
            "label": "string",
            "tone": "string"
          }
        ]
      },
      "forms": [
        {
          "description": "string",
          "fields": [
            {
              "description": "string",
              "key": "string",
              "label": "string",
              "options": [
                "string"
              ],
              "required": true,
              "type": "string"
            }
          ],
          "id": "string",
          "label": "string"
        }
      ],
      "home": {
        "description": "string",
        "eyebrow": "string",
        "title": "string"
      },
      "pack": "string",
      "pack_version": "string",
      "preset": "string",
      "workspaces": [
        {
          "description": "string",
          "id": "string",
          "label": "string",
          "order": 0,
          "required_capabilities": [
            "string"
          ],
          "surface": "string"
        }
      ]
    },
    "integrations": {
      "property1": {
        "actions": [
          "string"
        ],
        "display_name": "string",
        "enabled": true
      },
      "property2": {
        "actions": [
          "string"
        ],
        "display_name": "string",
        "enabled": true
      }
    },
    "locale": "string",
    "modules": [
      "string"
    ],
    "qualification_fields": [
      {
        "description": "string",
        "key": "string",
        "label": "string",
        "required": true
      }
    ],
    "sales_copilot": {
      "action_policies": [
        {
          "action_id": "string",
          "approval": "string",
          "draft_only": true,
          "manager_roles": [
            "string"
          ]
        }
      ],
      "actions": [
        {
          "default_approval": "string",
          "external_effect": true,
          "id": "string",
          "kind": "string",
          "label": "string"
        }
      ],
      "branding": {
        "accent_color": "string",
        "logo_url": "string",
        "primary_color": "string",
        "product_name": "string"
      },
      "connections": [
        {
          "display_name": "string",
          "id": "string",
          "kind": "string",
          "state": "string"
        }
      ],
      "destinations": [
        {
          "id": "string",
          "includes": [
            "string"
          ],
          "label": "string",
          "manager_view": [
            "string"
          ]
        }
      ],
      "draft_only": true,
      "knowledge_policy": {
        "reject_expired_sources": true,
        "require_approved_sources": true,
        "require_citations": true
      },
      "runtime_v2_enabled": true,
      "schema_version": 0,
      "solution_pack_id": "string",
      "solution_pack_version": "string",
      "structured_catalog": {
        "source": {
          "id": "string",
          "is_demo": true,
          "kind": "string",
          "label": "string",
          "template_id": "string"
        },
        "view": {
          "card_fields": [
            {
              "format": "string",
              "key": "string",
              "label": "string",
              "unit": "string"
            }
          ],
          "description": "string",
          "detail_fields": [
            {
              "format": "string",
              "key": "string",
              "label": "string",
              "unit": "string"
            }
          ],
          "filter_fields": [
            {
              "key": "string",
              "label": "string",
              "options": [
                {
                  "label": "string",
                  "value": "string"
                }
              ]
            }
          ],
          "group_by": "string",
          "item_type": "string",
          "layout": "string",
          "plural": "string",
          "show_bookings": true,
          "show_freshness": true,
          "singular": "string",
          "title": "string"
        }
      },
      "workflows": [
        {
          "goal": "string",
          "id": "string",
          "preview_scenario": "string",
          "required_context": [
            "string"
          ]
        }
      ]
    },
    "schema_version": 0,
    "surfaces": [
      {
        "enabled": true,
        "label": "string",
        "module": "string",
        "order": 0,
        "section": "string"
      }
    ],
    "visitor_allowed_origins": [
      "string"
    ],
    "widget": {
      "agent_id": "string",
      "allowed_hostnames": [
        "string"
      ],
      "consent": {
        "text": "string",
        "version": "string"
      },
      "enabled": true,
      "env": "string",
      "site_key": "string",
      "tenant_slug": "string",
      "theme": {
        "property1": "string",
        "property2": "string"
      }
    }
  },
  "tenant_id": "string",
  "version": 0
}
{
  "$schema": "/api/v1/schemas/ErrorModel.json",
  "detail": "Property foo is required but is missing.",
  "errors": [
    {
      "location": "string",
      "message": "string",
      "value": null
    }
  ],
  "instance": "https://example.com/error-log/abc123",
  "status": 400,
  "title": "Bad Request",
  "type": "https://example.com/errors/example"
}

List the caller's tenant hostnames

GET
/tenant/domains
AuthorizationBearer <token>

API key issued to a Sonzai project. Format: Bearer sk_....

In: header

Response Body

application/json

application/problem+json

curl -X GET "https://loading/api/v1/tenant/domains"
{
  "$schema": "/api/v1/schemas/TenantDomainsOutputBody.json",
  "domains": [
    {
      "$schema": "/api/v1/schemas/DomainBody.json",
      "domain": "string",
      "domain_type": "string",
      "is_primary": true,
      "verification_token": "string",
      "verified": true,
      "verified_at": "2019-08-24T14:15:22Z"
    }
  ]
}
{
  "$schema": "/api/v1/schemas/ErrorModel.json",
  "detail": "Property foo is required but is missing.",
  "errors": [
    {
      "location": "string",
      "message": "string",
      "value": null
    }
  ],
  "instance": "https://example.com/error-log/abc123",
  "status": 400,
  "title": "Bad Request",
  "type": "https://example.com/errors/example"
}

List a tenant's hostnames

GET
/tenants/{id}/domains

Authorization

bearerClerk
AuthorizationBearer <token>

Clerk session JWT from an authenticated dashboard user. Format: Bearer eyJ....

In: header

Path Parameters

id*string

Response Body

application/json

application/problem+json

curl -X GET "https://loading/api/v1/tenants/string/domains"
{
  "$schema": "/api/v1/schemas/ListTenantDomainsResponse.json",
  "domains": [
    {
      "$schema": "/api/v1/schemas/DomainBody.json",
      "domain": "string",
      "domain_type": "string",
      "is_primary": true,
      "verification_token": "string",
      "verified": true,
      "verified_at": "2019-08-24T14:15:22Z"
    }
  ]
}
{
  "$schema": "/api/v1/schemas/ErrorModel.json",
  "detail": "Property foo is required but is missing.",
  "errors": [
    {
      "location": "string",
      "message": "string",
      "value": null
    }
  ],
  "instance": "https://example.com/error-log/abc123",
  "status": 400,
  "title": "Bad Request",
  "type": "https://example.com/errors/example"
}

Claim a hostname for a tenant

POST
/tenants/{id}/domains

Authorization

bearerClerk
AuthorizationBearer <token>

Clerk session JWT from an authenticated dashboard user. Format: Bearer eyJ....

In: header

Path Parameters

id*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/problem+json

curl -X POST "https://loading/api/v1/tenants/string/domains" \  -H "Content-Type: application/json" \  -d '{    "domain_type": "subdomain"  }'
{
  "$schema": "/api/v1/schemas/DomainBody.json",
  "domain": "string",
  "domain_type": "string",
  "is_primary": true,
  "verification_token": "string",
  "verified": true,
  "verified_at": "2019-08-24T14:15:22Z"
}
{
  "$schema": "/api/v1/schemas/ErrorModel.json",
  "detail": "Property foo is required but is missing.",
  "errors": [
    {
      "location": "string",
      "message": "string",
      "value": null
    }
  ],
  "instance": "https://example.com/error-log/abc123",
  "status": 400,
  "title": "Bad Request",
  "type": "https://example.com/errors/example"
}

Remove a tenant hostname

DELETE
/tenants/{id}/domains/{domain}

Authorization

bearerClerk
AuthorizationBearer <token>

Clerk session JWT from an authenticated dashboard user. Format: Bearer eyJ....

In: header

Path Parameters

id*string
domain*string

Response Body

application/problem+json

curl -X DELETE "https://loading/api/v1/tenants/string/domains/string"
Empty
{
  "$schema": "/api/v1/schemas/ErrorModel.json",
  "detail": "Property foo is required but is missing.",
  "errors": [
    {
      "location": "string",
      "message": "string",
      "value": null
    }
  ],
  "instance": "https://example.com/error-log/abc123",
  "status": 400,
  "title": "Bad Request",
  "type": "https://example.com/errors/example"
}

Verify custom-domain ownership via TXT record

POST
/tenants/{id}/domains/{domain}/verify

Authorization

bearerClerk
AuthorizationBearer <token>

Clerk session JWT from an authenticated dashboard user. Format: Bearer eyJ....

In: header

Path Parameters

id*string
domain*string

Response Body

application/json

application/problem+json

curl -X POST "https://loading/api/v1/tenants/string/domains/string/verify"
{
  "$schema": "/api/v1/schemas/DomainBody.json",
  "domain": "string",
  "domain_type": "string",
  "is_primary": true,
  "verification_token": "string",
  "verified": true,
  "verified_at": "2019-08-24T14:15:22Z"
}
{
  "$schema": "/api/v1/schemas/ErrorModel.json",
  "detail": "Property foo is required but is missing.",
  "errors": [
    {
      "location": "string",
      "message": "string",
      "value": null
    }
  ],
  "instance": "https://example.com/error-log/abc123",
  "status": 400,
  "title": "Bad Request",
  "type": "https://example.com/errors/example"
}

Create or update one tenant integration contract

PUT
/tenants/{id}/integrations/{name}

Authorization

bearerClerk
AuthorizationBearer <token>

Clerk session JWT from an authenticated dashboard user. Format: Bearer eyJ....

In: header

Path Parameters

id*string
name*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/problem+json

curl -X PUT "https://loading/api/v1/tenants/string/integrations/string" \  -H "Content-Type: application/json" \  -d '{    "capability": {      "actions": [        {          "field_mappings": [            {              "from": "string",              "to": "string"            }          ],          "input_schema": [            {              "name": "string",              "type": "string"            }          ],          "name": "string",          "returns": [            {              "name": "string",              "type": "string"            }          ]        }      ],      "adapter": "string",      "audit": true,      "auth": {        "scheme": "string"      },      "connection": {        "method": "string"      },      "data_flow": "string",      "id": "string",      "request_pattern": {        "idempotency": true,        "mode": "string"      },      "version": 0    },    "integration": {}  }'
{
  "$schema": "/api/v1/schemas/BrowserManifestVersionOutputBody.json",
  "manifest": {
    "branding": {
      "colors": {
        "accent": "string",
        "background": "string",
        "primary": "string"
      },
      "favicon_url": "string",
      "font_family": "string",
      "logo_url": "string",
      "product_name": "string",
      "terminology": {
        "property1": "string",
        "property2": "string"
      }
    },
    "default_project_id": "string",
    "demo": {
      "auto_reply": true,
      "buyer_persona": "string"
    },
    "experience": {
      "dashboard": {
        "focus_label": "string",
        "metrics": [
          {
            "description": "string",
            "format": "string",
            "id": "string",
            "label": "string",
            "tone": "string"
          }
        ]
      },
      "forms": [
        {
          "description": "string",
          "fields": [
            {
              "description": "string",
              "key": "string",
              "label": "string",
              "options": [
                "string"
              ],
              "required": true,
              "type": "string"
            }
          ],
          "id": "string",
          "label": "string"
        }
      ],
      "home": {
        "description": "string",
        "eyebrow": "string",
        "title": "string"
      },
      "pack": "string",
      "pack_version": "string",
      "preset": "string",
      "workspaces": [
        {
          "description": "string",
          "id": "string",
          "label": "string",
          "order": 0,
          "required_capabilities": [
            "string"
          ],
          "surface": "string"
        }
      ]
    },
    "integrations": {
      "property1": {
        "actions": [
          "string"
        ],
        "display_name": "string",
        "enabled": true
      },
      "property2": {
        "actions": [
          "string"
        ],
        "display_name": "string",
        "enabled": true
      }
    },
    "locale": "string",
    "modules": [
      "string"
    ],
    "qualification_fields": [
      {
        "description": "string",
        "key": "string",
        "label": "string",
        "required": true
      }
    ],
    "sales_copilot": {
      "action_policies": [
        {
          "action_id": "string",
          "approval": "string",
          "draft_only": true,
          "manager_roles": [
            "string"
          ]
        }
      ],
      "actions": [
        {
          "default_approval": "string",
          "external_effect": true,
          "id": "string",
          "kind": "string",
          "label": "string"
        }
      ],
      "branding": {
        "accent_color": "string",
        "logo_url": "string",
        "primary_color": "string",
        "product_name": "string"
      },
      "connections": [
        {
          "display_name": "string",
          "id": "string",
          "kind": "string",
          "state": "string"
        }
      ],
      "destinations": [
        {
          "id": "string",
          "includes": [
            "string"
          ],
          "label": "string",
          "manager_view": [
            "string"
          ]
        }
      ],
      "draft_only": true,
      "knowledge_policy": {
        "reject_expired_sources": true,
        "require_approved_sources": true,
        "require_citations": true
      },
      "runtime_v2_enabled": true,
      "schema_version": 0,
      "solution_pack_id": "string",
      "solution_pack_version": "string",
      "structured_catalog": {
        "source": {
          "id": "string",
          "is_demo": true,
          "kind": "string",
          "label": "string",
          "template_id": "string"
        },
        "view": {
          "card_fields": [
            {
              "format": "string",
              "key": "string",
              "label": "string",
              "unit": "string"
            }
          ],
          "description": "string",
          "detail_fields": [
            {
              "format": "string",
              "key": "string",
              "label": "string",
              "unit": "string"
            }
          ],
          "filter_fields": [
            {
              "key": "string",
              "label": "string",
              "options": [
                {
                  "label": "string",
                  "value": "string"
                }
              ]
            }
          ],
          "group_by": "string",
          "item_type": "string",
          "layout": "string",
          "plural": "string",
          "show_bookings": true,
          "show_freshness": true,
          "singular": "string",
          "title": "string"
        }
      },
      "workflows": [
        {
          "goal": "string",
          "id": "string",
          "preview_scenario": "string",
          "required_context": [
            "string"
          ]
        }
      ]
    },
    "schema_version": 0,
    "surfaces": [
      {
        "enabled": true,
        "label": "string",
        "module": "string",
        "order": 0,
        "section": "string"
      }
    ],
    "visitor_allowed_origins": [
      "string"
    ],
    "widget": {
      "agent_id": "string",
      "allowed_hostnames": [
        "string"
      ],
      "consent": {
        "text": "string",
        "version": "string"
      },
      "enabled": true,
      "env": "string",
      "site_key": "string",
      "tenant_slug": "string",
      "theme": {
        "property1": "string",
        "property2": "string"
      }
    }
  },
  "tenant_id": "string",
  "version": 0
}
{
  "$schema": "/api/v1/schemas/ErrorModel.json",
  "detail": "Property foo is required but is missing.",
  "errors": [
    {
      "location": "string",
      "message": "string",
      "value": null
    }
  ],
  "instance": "https://example.com/error-log/abc123",
  "status": 400,
  "title": "Bad Request",
  "type": "https://example.com/errors/example"
}

Get a tenant's manifest

GET
/tenants/{id}/manifest

Authorization

bearerClerk
AuthorizationBearer <token>

Clerk session JWT from an authenticated dashboard user. Format: Bearer eyJ....

In: header

Path Parameters

id*string

Response Body

application/json

application/problem+json

curl -X GET "https://loading/api/v1/tenants/string/manifest"
{
  "$schema": "/api/v1/schemas/BrowserManifestVersionOutputBody.json",
  "manifest": {
    "branding": {
      "colors": {
        "accent": "string",
        "background": "string",
        "primary": "string"
      },
      "favicon_url": "string",
      "font_family": "string",
      "logo_url": "string",
      "product_name": "string",
      "terminology": {
        "property1": "string",
        "property2": "string"
      }
    },
    "default_project_id": "string",
    "demo": {
      "auto_reply": true,
      "buyer_persona": "string"
    },
    "experience": {
      "dashboard": {
        "focus_label": "string",
        "metrics": [
          {
            "description": "string",
            "format": "string",
            "id": "string",
            "label": "string",
            "tone": "string"
          }
        ]
      },
      "forms": [
        {
          "description": "string",
          "fields": [
            {
              "description": "string",
              "key": "string",
              "label": "string",
              "options": [
                "string"
              ],
              "required": true,
              "type": "string"
            }
          ],
          "id": "string",
          "label": "string"
        }
      ],
      "home": {
        "description": "string",
        "eyebrow": "string",
        "title": "string"
      },
      "pack": "string",
      "pack_version": "string",
      "preset": "string",
      "workspaces": [
        {
          "description": "string",
          "id": "string",
          "label": "string",
          "order": 0,
          "required_capabilities": [
            "string"
          ],
          "surface": "string"
        }
      ]
    },
    "integrations": {
      "property1": {
        "actions": [
          "string"
        ],
        "display_name": "string",
        "enabled": true
      },
      "property2": {
        "actions": [
          "string"
        ],
        "display_name": "string",
        "enabled": true
      }
    },
    "locale": "string",
    "modules": [
      "string"
    ],
    "qualification_fields": [
      {
        "description": "string",
        "key": "string",
        "label": "string",
        "required": true
      }
    ],
    "sales_copilot": {
      "action_policies": [
        {
          "action_id": "string",
          "approval": "string",
          "draft_only": true,
          "manager_roles": [
            "string"
          ]
        }
      ],
      "actions": [
        {
          "default_approval": "string",
          "external_effect": true,
          "id": "string",
          "kind": "string",
          "label": "string"
        }
      ],
      "branding": {
        "accent_color": "string",
        "logo_url": "string",
        "primary_color": "string",
        "product_name": "string"
      },
      "connections": [
        {
          "display_name": "string",
          "id": "string",
          "kind": "string",
          "state": "string"
        }
      ],
      "destinations": [
        {
          "id": "string",
          "includes": [
            "string"
          ],
          "label": "string",
          "manager_view": [
            "string"
          ]
        }
      ],
      "draft_only": true,
      "knowledge_policy": {
        "reject_expired_sources": true,
        "require_approved_sources": true,
        "require_citations": true
      },
      "runtime_v2_enabled": true,
      "schema_version": 0,
      "solution_pack_id": "string",
      "solution_pack_version": "string",
      "structured_catalog": {
        "source": {
          "id": "string",
          "is_demo": true,
          "kind": "string",
          "label": "string",
          "template_id": "string"
        },
        "view": {
          "card_fields": [
            {
              "format": "string",
              "key": "string",
              "label": "string",
              "unit": "string"
            }
          ],
          "description": "string",
          "detail_fields": [
            {
              "format": "string",
              "key": "string",
              "label": "string",
              "unit": "string"
            }
          ],
          "filter_fields": [
            {
              "key": "string",
              "label": "string",
              "options": [
                {
                  "label": "string",
                  "value": "string"
                }
              ]
            }
          ],
          "group_by": "string",
          "item_type": "string",
          "layout": "string",
          "plural": "string",
          "show_bookings": true,
          "show_freshness": true,
          "singular": "string",
          "title": "string"
        }
      },
      "workflows": [
        {
          "goal": "string",
          "id": "string",
          "preview_scenario": "string",
          "required_context": [
            "string"
          ]
        }
      ]
    },
    "schema_version": 0,
    "surfaces": [
      {
        "enabled": true,
        "label": "string",
        "module": "string",
        "order": 0,
        "section": "string"
      }
    ],
    "visitor_allowed_origins": [
      "string"
    ],
    "widget": {
      "agent_id": "string",
      "allowed_hostnames": [
        "string"
      ],
      "consent": {
        "text": "string",
        "version": "string"
      },
      "enabled": true,
      "env": "string",
      "site_key": "string",
      "tenant_slug": "string",
      "theme": {
        "property1": "string",
        "property2": "string"
      }
    }
  },
  "tenant_id": "string",
  "version": 0
}
{
  "$schema": "/api/v1/schemas/ErrorModel.json",
  "detail": "Property foo is required but is missing.",
  "errors": [
    {
      "location": "string",
      "message": "string",
      "value": null
    }
  ],
  "instance": "https://example.com/error-log/abc123",
  "status": 400,
  "title": "Bad Request",
  "type": "https://example.com/errors/example"
}

Update a tenant's browser-editable manifest

PUT
/tenants/{id}/manifest

Authorization

bearerClerk
AuthorizationBearer <token>

Clerk session JWT from an authenticated dashboard user. Format: Bearer eyJ....

In: header

Path Parameters

id*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

body*unknown

The browser-editable tenant manifest. Executable capabilities, private endpoints, auth providers, mappings, grants, and secret references are rejected.

Response Body

application/json

application/problem+json

curl -X PUT "https://loading/api/v1/tenants/string/manifest"
{
  "$schema": "/api/v1/schemas/BrowserManifestVersionOutputBody.json",
  "manifest": {
    "branding": {
      "colors": {
        "accent": "string",
        "background": "string",
        "primary": "string"
      },
      "favicon_url": "string",
      "font_family": "string",
      "logo_url": "string",
      "product_name": "string",
      "terminology": {
        "property1": "string",
        "property2": "string"
      }
    },
    "default_project_id": "string",
    "demo": {
      "auto_reply": true,
      "buyer_persona": "string"
    },
    "experience": {
      "dashboard": {
        "focus_label": "string",
        "metrics": [
          {
            "description": "string",
            "format": "string",
            "id": "string",
            "label": "string",
            "tone": "string"
          }
        ]
      },
      "forms": [
        {
          "description": "string",
          "fields": [
            {
              "description": "string",
              "key": "string",
              "label": "string",
              "options": [
                "string"
              ],
              "required": true,
              "type": "string"
            }
          ],
          "id": "string",
          "label": "string"
        }
      ],
      "home": {
        "description": "string",
        "eyebrow": "string",
        "title": "string"
      },
      "pack": "string",
      "pack_version": "string",
      "preset": "string",
      "workspaces": [
        {
          "description": "string",
          "id": "string",
          "label": "string",
          "order": 0,
          "required_capabilities": [
            "string"
          ],
          "surface": "string"
        }
      ]
    },
    "integrations": {
      "property1": {
        "actions": [
          "string"
        ],
        "display_name": "string",
        "enabled": true
      },
      "property2": {
        "actions": [
          "string"
        ],
        "display_name": "string",
        "enabled": true
      }
    },
    "locale": "string",
    "modules": [
      "string"
    ],
    "qualification_fields": [
      {
        "description": "string",
        "key": "string",
        "label": "string",
        "required": true
      }
    ],
    "sales_copilot": {
      "action_policies": [
        {
          "action_id": "string",
          "approval": "string",
          "draft_only": true,
          "manager_roles": [
            "string"
          ]
        }
      ],
      "actions": [
        {
          "default_approval": "string",
          "external_effect": true,
          "id": "string",
          "kind": "string",
          "label": "string"
        }
      ],
      "branding": {
        "accent_color": "string",
        "logo_url": "string",
        "primary_color": "string",
        "product_name": "string"
      },
      "connections": [
        {
          "display_name": "string",
          "id": "string",
          "kind": "string",
          "state": "string"
        }
      ],
      "destinations": [
        {
          "id": "string",
          "includes": [
            "string"
          ],
          "label": "string",
          "manager_view": [
            "string"
          ]
        }
      ],
      "draft_only": true,
      "knowledge_policy": {
        "reject_expired_sources": true,
        "require_approved_sources": true,
        "require_citations": true
      },
      "runtime_v2_enabled": true,
      "schema_version": 0,
      "solution_pack_id": "string",
      "solution_pack_version": "string",
      "structured_catalog": {
        "source": {
          "id": "string",
          "is_demo": true,
          "kind": "string",
          "label": "string",
          "template_id": "string"
        },
        "view": {
          "card_fields": [
            {
              "format": "string",
              "key": "string",
              "label": "string",
              "unit": "string"
            }
          ],
          "description": "string",
          "detail_fields": [
            {
              "format": "string",
              "key": "string",
              "label": "string",
              "unit": "string"
            }
          ],
          "filter_fields": [
            {
              "key": "string",
              "label": "string",
              "options": [
                {
                  "label": "string",
                  "value": "string"
                }
              ]
            }
          ],
          "group_by": "string",
          "item_type": "string",
          "layout": "string",
          "plural": "string",
          "show_bookings": true,
          "show_freshness": true,
          "singular": "string",
          "title": "string"
        }
      },
      "workflows": [
        {
          "goal": "string",
          "id": "string",
          "preview_scenario": "string",
          "required_context": [
            "string"
          ]
        }
      ]
    },
    "schema_version": 0,
    "surfaces": [
      {
        "enabled": true,
        "label": "string",
        "module": "string",
        "order": 0,
        "section": "string"
      }
    ],
    "visitor_allowed_origins": [
      "string"
    ],
    "widget": {
      "agent_id": "string",
      "allowed_hostnames": [
        "string"
      ],
      "consent": {
        "text": "string",
        "version": "string"
      },
      "enabled": true,
      "env": "string",
      "site_key": "string",
      "tenant_slug": "string",
      "theme": {
        "property1": "string",
        "property2": "string"
      }
    }
  },
  "tenant_id": "string",
  "version": 0
}
{
  "$schema": "/api/v1/schemas/ErrorModel.json",
  "detail": "Property foo is required but is missing.",
  "errors": [
    {
      "location": "string",
      "message": "string",
      "value": null
    }
  ],
  "instance": "https://example.com/error-log/abc123",
  "status": 400,
  "title": "Bad Request",
  "type": "https://example.com/errors/example"
}

Materialize a tenant profile and upsert its public manifest

PUT
/tenants/{id}/profile

Authorization

bearerClerk
AuthorizationBearer <token>

Clerk session JWT from an authenticated dashboard user. Format: Bearer eyJ....

In: header

Path Parameters

id*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

body*unknown

The full tenant profile JSON. Secret values and unknown fields are rejected.

Response Body

application/json

application/problem+json

curl -X PUT "https://loading/api/v1/tenants/string/profile"
{
  "$schema": "/api/v1/schemas/BrowserManifestVersionOutputBody.json",
  "manifest": {
    "branding": {
      "colors": {
        "accent": "string",
        "background": "string",
        "primary": "string"
      },
      "favicon_url": "string",
      "font_family": "string",
      "logo_url": "string",
      "product_name": "string",
      "terminology": {
        "property1": "string",
        "property2": "string"
      }
    },
    "default_project_id": "string",
    "demo": {
      "auto_reply": true,
      "buyer_persona": "string"
    },
    "experience": {
      "dashboard": {
        "focus_label": "string",
        "metrics": [
          {
            "description": "string",
            "format": "string",
            "id": "string",
            "label": "string",
            "tone": "string"
          }
        ]
      },
      "forms": [
        {
          "description": "string",
          "fields": [
            {
              "description": "string",
              "key": "string",
              "label": "string",
              "options": [
                "string"
              ],
              "required": true,
              "type": "string"
            }
          ],
          "id": "string",
          "label": "string"
        }
      ],
      "home": {
        "description": "string",
        "eyebrow": "string",
        "title": "string"
      },
      "pack": "string",
      "pack_version": "string",
      "preset": "string",
      "workspaces": [
        {
          "description": "string",
          "id": "string",
          "label": "string",
          "order": 0,
          "required_capabilities": [
            "string"
          ],
          "surface": "string"
        }
      ]
    },
    "integrations": {
      "property1": {
        "actions": [
          "string"
        ],
        "display_name": "string",
        "enabled": true
      },
      "property2": {
        "actions": [
          "string"
        ],
        "display_name": "string",
        "enabled": true
      }
    },
    "locale": "string",
    "modules": [
      "string"
    ],
    "qualification_fields": [
      {
        "description": "string",
        "key": "string",
        "label": "string",
        "required": true
      }
    ],
    "sales_copilot": {
      "action_policies": [
        {
          "action_id": "string",
          "approval": "string",
          "draft_only": true,
          "manager_roles": [
            "string"
          ]
        }
      ],
      "actions": [
        {
          "default_approval": "string",
          "external_effect": true,
          "id": "string",
          "kind": "string",
          "label": "string"
        }
      ],
      "branding": {
        "accent_color": "string",
        "logo_url": "string",
        "primary_color": "string",
        "product_name": "string"
      },
      "connections": [
        {
          "display_name": "string",
          "id": "string",
          "kind": "string",
          "state": "string"
        }
      ],
      "destinations": [
        {
          "id": "string",
          "includes": [
            "string"
          ],
          "label": "string",
          "manager_view": [
            "string"
          ]
        }
      ],
      "draft_only": true,
      "knowledge_policy": {
        "reject_expired_sources": true,
        "require_approved_sources": true,
        "require_citations": true
      },
      "runtime_v2_enabled": true,
      "schema_version": 0,
      "solution_pack_id": "string",
      "solution_pack_version": "string",
      "structured_catalog": {
        "source": {
          "id": "string",
          "is_demo": true,
          "kind": "string",
          "label": "string",
          "template_id": "string"
        },
        "view": {
          "card_fields": [
            {
              "format": "string",
              "key": "string",
              "label": "string",
              "unit": "string"
            }
          ],
          "description": "string",
          "detail_fields": [
            {
              "format": "string",
              "key": "string",
              "label": "string",
              "unit": "string"
            }
          ],
          "filter_fields": [
            {
              "key": "string",
              "label": "string",
              "options": [
                {
                  "label": "string",
                  "value": "string"
                }
              ]
            }
          ],
          "group_by": "string",
          "item_type": "string",
          "layout": "string",
          "plural": "string",
          "show_bookings": true,
          "show_freshness": true,
          "singular": "string",
          "title": "string"
        }
      },
      "workflows": [
        {
          "goal": "string",
          "id": "string",
          "preview_scenario": "string",
          "required_context": [
            "string"
          ]
        }
      ]
    },
    "schema_version": 0,
    "surfaces": [
      {
        "enabled": true,
        "label": "string",
        "module": "string",
        "order": 0,
        "section": "string"
      }
    ],
    "visitor_allowed_origins": [
      "string"
    ],
    "widget": {
      "agent_id": "string",
      "allowed_hostnames": [
        "string"
      ],
      "consent": {
        "text": "string",
        "version": "string"
      },
      "enabled": true,
      "env": "string",
      "site_key": "string",
      "tenant_slug": "string",
      "theme": {
        "property1": "string",
        "property2": "string"
      }
    }
  },
  "tenant_id": "string",
  "version": 0
}
{
  "$schema": "/api/v1/schemas/ErrorModel.json",
  "detail": "Property foo is required but is missing.",
  "errors": [
    {
      "location": "string",
      "message": "string",
      "value": null
    }
  ],
  "instance": "https://example.com/error-log/abc123",
  "status": 400,
  "title": "Bad Request",
  "type": "https://example.com/errors/example"
}

Mint a short-lived workspace handoff session

POST
/tenants/{id}/workspace-session

Authorization

bearerClerk
AuthorizationBearer <token>

Clerk session JWT from an authenticated dashboard user. Format: Bearer eyJ....

In: header

Path Parameters

id*string

Response Body

application/json

application/problem+json

curl -X POST "https://loading/api/v1/tenants/string/workspace-session"
{
  "$schema": "/api/v1/schemas/WorkspaceSessionOutputBody.json",
  "token": "string",
  "workspace_url": "string"
}
{
  "$schema": "/api/v1/schemas/ErrorModel.json",
  "detail": "Property foo is required but is missing.",
  "errors": [
    {
      "location": "string",
      "message": "string",
      "value": null
    }
  ],
  "instance": "https://example.com/error-log/abc123",
  "status": 400,
  "title": "Bad Request",
  "type": "https://example.com/errors/example"
}