Account Settings

Preview — pending review

This reference is generated from the platform API contract and is still under review. Operations, fields, and descriptions can change before publication.

Update the tenant's billing identity

PATCH
/scopes/{scopeId}/settings/company

Partial update of the billing identity: legal name, tax / VAT id, address line, city, postal code, country. Only supplied fields change; an empty string clears an optional field. The next invoice closed for the tenant carries the new values. Validation: the tenant OWNER only (else 403 FORBIDDEN) — the identity is tenant-wide; the values go through the shared profile validators: for country TR the tax id must be a valid VKN (10 digits) or TCKN (11 digits), elsewhere 3–40 letters, digits, spaces and . - /; country an ISO 3166-1 alpha-2 code; text length limits — violations map to 422 VALIDATION_FAILED naming the field. Changing the country re-checks the stored tax id. Async & state: synchronous — returns 200 with the updated CompanyProfile. Errors: 401 unauthenticated; 403 not the tenant owner; 404 unknown scope; 422 field validation failure; 500 internal failure. Idempotency/Concurrency: This operation does not use Idempotency-Key; it may be omitted and a sent one is ignored. A repeated identical request sets the same values again and returns 200 with the same CompanyProfile; no If-Match precondition is evaluated (last write wins).

Authorization

bearerToken
headerAuthorizationBearer <token>

An API token (pc_live_…) or a service-account key (sak_live_…), created in Identity & Access Management and sent as Authorization: Bearer <token>. Requests are rate limited per credential and per tenant: every response carries X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset, and a refused request gets 429 RATE_LIMITED with Retry-After.

Path Parameters

scopeId*string

Opaque ownership+authorization scope resolving to tenant + subscription + project.

Request Body

application/json
  1. body

Partial update of the billing identity; all fields optional, an empty string clears an optional field. Validated by the same rules as sign-up and the operator edits.

legalName?string
Lengthlength <= 200
taxId?string
Lengthlength <= 40
addressLine1?string
Lengthlength <= 200
city?string
Lengthlength <= 100
postalCode?string
Lengthlength <= 16
country?string

ISO 3166-1 alpha-2 country code.

Response Body

Updated billing identity.

application/json
  1. response

The tenant's billing identity — exactly what the invoice "Bill To" is frozen from: the tax id on the tenant, the legal name and address on the tenant owner's profile. One record per tenant; id is the tenant id.

id*string

The tenant id (one billing identity per tenant).

legalName*string

Registered company name (the owner's companyName); empty when not set.

displayName*string

The tenant (organization) display name. Read-only here.

website*string

Read-only here; edited on the Company settings screen.

taxId*string

Tax / VAT identifier. For country TR a valid VKN (10 digits) or TCKN (11 digits); elsewhere 3–40 letters, digits, spaces and . - /.

billingEmail*string

The address invoices are addressed to — the tenant owner's login email (the invoice bill-to fallback). Read-only.

addressLine1*string
city*string
postalCode*string
country*string

ISO 3166-1 alpha-2 country code (e.g. TR, DE, GB, US, AE); empty when not set.

curl -X PATCH "https://example.com/scopes/string/settings/company" \  -H "Content-Type: application/json" \  -d '{}'
{  "id": "string",  "legalName": "Acme Technologies Ltd",  "displayName": "Acme Corp",  "website": "https://acme.io",  "taxId": "GB 432 5089 17",  "billingEmail": "billing@acme.example",  "addressLine1": "1 Finsbury Avenue",  "city": "London",  "postalCode": "EC2M 2PF",  "country": "GB"}