Skip to content
Preview. The endpoints on this page are illustrative and are likely to change as they move toward general availability. Documentation is published in advance so you can start shaping your integration; treat request and response details as subject to revision.

Organization

An Organization is the top-level tenant boundary in Cirrus. Every user, deal, account, contact, meeting, and Q&A belongs to exactly one org. Every Platform API token is scoped to exactly one org.

Returned by the endpoints under /api/v1alpha1/organizations and referenced by other resources' orgId field.

The Organization schema

json
{
  "id": "org_...",
  "name": "Acme Corporation",
  "primaryEmailDomain": "acme.com",
  "emailDomains": ["acme.com", "acme.co.uk"],
  "administrator": {
    "userId": "usr_...",
    "displayName": "Sam Chen"
  },
  "industry": "SaaS",
  "employeeCount": 1250,
  "logoUrl": "https://cdn.example.com/orgs/org_....png",
  "sourceRefs": {
    "salesforce": {
      "orgId": "00D1U000000abcXYZ"
    }
  },
  "createdAt": "2024-03-15T00:00:00Z",
  "updatedAt": "2026-07-14T09:30:00Z"
}

Fields

id string

Organization id, prefixed org_. Same encoding surfaced across Cortex + scheduling + identity responses.

name string

Display name. Mutable via PATCH.

primaryEmailDomain string

The canonical email domain used for invitation flows and default-org resolution. Must be one of the entries in emailDomains[]. Mutable via PATCH — the new value must already be a verified domain.

emailDomains list

All verified domains that resolve to this org. Adding new domains requires DNS verification (an interactive dashboard flow with TXT-record challenges); not exposed via the Platform API.

administrator object

The org's contractual owner — billing contact, signatory, dashboard super-admin. Lightweight {userId, displayName} reference.

AttributeTypeDescription
userIdstringThe administrator's user id, prefixed usr_.
displayNamestringDenormalised for convenience.

Not mutable via PATCH. Transferring org ownership is a two-step confirmation flow that lives in the dashboard.

Other users with the Administrator role (there may be many) are not this field — this is specifically the contractual owner. Query all Administrators via GET /users?role=Administrator.

industry string

Free-text, aligned with Cortex's account industry taxonomy. Mutable via PATCH.

employeeCount number

1–1,000,000. Mutable via PATCH.

logoUrl string

Public CDN URL for the org's logo. null when unset.

sourceRefs object

External-system references. Present only when the org has connected the corresponding integration.

AttributeTypeDescription
salesforce.orgIdstringLinked Salesforce Organization id. Raw Salesforce id, not wrapped in an org_ prefix.

createdAt, updatedAt string

ISO 8601 UTC.

Entitlements

Feature entitlements and seat counts are exposed on a separate sub-resource because they have their own cache TTL (bill-driven, not profile-driven). See GET /organizations/me/entitlements.

features.{name} boolean

Stable, documented enum. Reading features.smartScheduling on a token issued today will still work in six months. New features get added with a documented available_since date; retired features stay as false for one major version before being removed.

Current keys: smartScheduling, teamCalendarScheduling, replyTracking, emailBlast, cortexApp, meetingAi.

seats object

AttributeTypeDescription
totalnumberOrg's current seat cap.
usednumberActive users + pending invites.
availablenumbertotal - used. Preflight this before calling POST /users.

licenseTier object

AttributeTypeDescription
slugstringCoarse-grained tier: free, starter, professional, enterprise. Partners key on slug.
namestringDisplay name.

For per-feature capability checks, read features.{name} — don't infer from tier.

asOf string

ISO 8601 UTC. Timestamp of the underlying license snapshot. Entitlements are cached with Cache-Control: private, max-age=60.

json
{
  "orgId": "org_...",
  "features": {
    "smartScheduling": true,
    "teamCalendarScheduling": true,
    "replyTracking": true,
    "emailBlast": false,
    "cortexApp": true,
    "meetingAi": true
  },
  "seats": {
    "total": 25,
    "used": 18,
    "available": 7
  },
  "licenseTier": {
    "slug": "professional",
    "name": "Professional"
  },
  "asOf": "2026-08-20T15:00:00Z"
}
  • User — every user has an orgId that resolves to an Organization.
  • Account — every account carries an orgId matching the token's org context.
  • Deal — same.
  • Contact — same.

Raleigh, NC — a Cirruspath, Inc. company