Set the default organisation

put/v1/me/default-organisation

This endpoint is in the contract, but the API doesn't serve it during early access. It returns 404 for now.

Saves the organisation (the org a fresh sign-in lands in). It does not change which org a request acts on — that is always the Vojo-Organisation header. A target the user cannot access returns 403 organisation_access_denied. OAuth only; no org header needed.

Access

Authentication
OAuth access token only. Secret keys are rejected.
Scope
account:write
User permission
Membership of the organisation is enough.

Headers

  • Vojo-Versionstring

    Optional API version pin (a date). Overrides the version pinned on the secret key / organisation for this request. Echoed in the Vojo-Version response header. Within /v1 only additive changes ship, so most callers can omit it.

    date

Request body

  • organisation_idstringRequired

    Organisation id. Opaque string — treat as an identifier, never parse it.

Response 200

OK

  • dataobjectRequired

    The user's persisted default (home) organisation.

    Show 1 field
    • organisation_idstringRequired

      Organisation id. Opaque string — treat as an identifier, never parse it.

  • metaobjectRequired

    Response metadata for single-resource responses. Reserved; currently empty. Clients must ignore unknown members.

Response headers

  • Vojo-Versionstring

    The API version (date) this response was rendered with — the request's Vojo-Version, else the key/org pin.

  • RateLimitstring

    IETF RateLimit header: remaining quota in the current window, e.g. "default";r=97;t=42.

  • RateLimit-Policystring

    IETF RateLimit-Policy header, e.g. "default";q=100;w=60. Portal OAuth clients get a higher tier.

Errors

Every error is application/problem+json. Branch on its code.

  • 400

    Malformed request: invalid JSON, a bad cursor, a missing Vojo-Organisation for an OAuth caller, or an unknown Vojo-Version.

  • 401

    Missing, invalid, expired or revoked credential.

  • 403

    The caller is authenticated but not allowed: missing scope (insufficient_scope), missing Permissions flag (permission_denied), a client/installer persona on an operator endpoint (operator_access_required), or no access to the requested org (organisation_access_denied).

  • 422

    Well-formed request that failed validation. errors[] lists each failing field.

  • 429

    Rate limit exceeded for this principal. Back off for Retry-After seconds.

  • 500

    Unexpected server failure.