VRPlatformVRPlatform
Teams

/team/owner-portal/setup

Add or update the current team’s owner portal domain, branding and sender, go live, or turn it off. Requires a Team Admin. Going live requires verified Cloudflare and Clerk providers; a sender on a live portal requires a verified Postmark domain.

Required scope: teams:write

PUT
/team/owner-portal/setup
X-API-Key<token>

API key provided in dashboard

In: header

Request Body

application/json

hostname*string
Match^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)+[a-z](?:[a-z0-9-]{0,61}[a-z0-9])?$
Lengthlength <= 253
status*string
Value in"pending" | "active" | "disabled"
name*string
Length1 <= length <= 60
logo*string|null
colorPrimary*string
Match^#[0-9a-f]{6}$
linksEnabled*boolean
sender*|null
expectedRevision*integer

Current revision, or 0 to add the domain.

Range0 <= value <= 9007199254740991

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PUT "https://api.vrplatform.app/team/owner-portal/setup" \  -H "Content-Type: application/json" \  -d '{    "hostname": "string",    "status": "pending",    "name": "string",    "logo": "http://example.com",    "colorPrimary": "string",    "linksEnabled": true,    "sender": {      "from": "user@example.com",      "replyTo": "user@example.com"    },    "expectedRevision": 9007199254740991  }'
{
  "hostname": "string",
  "status": "pending",
  "name": "string",
  "logo": "http://example.com",
  "colorPrimary": "string",
  "showPlatformBranding": true,
  "linksEnabled": true,
  "sender": {
    "from": "user@example.com",
    "replyTo": "user@example.com"
  },
  "revision": 9007199254740991
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "reason": "accountClassificationLocked",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "code": "duplicateLast4",
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "reason": "accountClassificationLocked",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "code": "duplicateLast4",
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "reason": "accountClassificationLocked",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "code": "duplicateLast4",
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "reason": "accountClassificationLocked",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "code": "duplicateLast4",
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "reason": "accountClassificationLocked",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "code": "duplicateLast4",
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "reason": "accountClassificationLocked",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "code": "duplicateLast4",
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "reason": "accountClassificationLocked",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "code": "duplicateLast4",
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "MISDIRECTED_REQUEST",
  "reason": "accountClassificationLocked",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "code": "duplicateLast4",
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": {
    "teamId": "a4ede8ba-7c0a-4485-8763-cbd9b282fbec",
    "dataRegion": "ap",
    "apiBaseUrl": "http://example.com"
  }
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "reason": "accountClassificationLocked",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "code": "duplicateLast4",
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "LOCKED",
  "reason": "accountClassificationLocked",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "code": "duplicateLast4",
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "reason": "accountClassificationLocked",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "code": "duplicateLast4",
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "reason": "accountClassificationLocked",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "code": "duplicateLast4",
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}