Accept an organization invitation

Add MCP server to your AI tool

Allow AI tools and LLMs to interact with the API documentation portal through MCP.

MCP server URL

https://docs.usehearsay.com/mcp

Standard setup for AI tools providing an mcp.json file

mcp.json
{
  "integrations MCP server": {
    "url": "https://docs.usehearsay.com/mcp"
  }
}

Close
POST /organization/{orgId}/invitation/accept

Accepts an invitation using the emailed token and email and returns the organization details. When the invitee has no account yet, name and password are required (400 otherwise), the account is created and signed in, and login holds its tokens and profile; for an existing user login is null. No auth, but the organization needs an active plan (403). Returns 404 for an unknown organization or invitation, and 400 when the token has expired or the invitation is no longer pending.

Path parameters

  • orgId string Required

    Id of the organization

application/json

Body Required

Accept invitation body

  • token string Required
  • email string Required
  • name string
  • password string

Responses

  • 201 application/json
    Hide response attributes Show response attributes object
    • data object Required
      Hide data attributes Show data attributes object
      • login object
        Hide login attributes Show login attributes object
        • createdAt string(date-time) Required
        • updatedAt string(date-time) Required
        • id string Required
        • accessToken string Required
        • refreshToken string Required
        • userProfile object Required
          Hide userProfile attributes Show userProfile attributes object
          • createdAt string(date-time) Required
          • updatedAt string(date-time) Required
          • id string Required
          • name string Required
          • email string Required
          • phone array[string] Required
          • isActive boolean Required
          • isEmailVerified boolean Required
          • lastActive string(date-time) Required
          • roles array[string] Required
          • avatar object Required

            The full record on routes that load it; null (or an empty list) on routes that do not.

            Hide avatar attributes Show avatar attributes object
            • createdAt string(date-time) Required
            • updatedAt string(date-time) Required
            • id string Required
            • name string Required
            • providerId string Required
            • convertedName string | null Required
            • convertedProviderId string Required
            • provider string Required
            • size number Required

              Size in bytes

            • transferState number | null Required
          • onboardingStatus string | null Required
          • userType string | null Required
          • firstName string Required
          • lastName string Required
          • initials string Required
          • userOrganizations array[object]
            Hide userOrganizations attributes Show userOrganizations attributes object
            • organization object Required
              Hide organization attributes Show organization attributes object
              • createdAt string(date-time) Required
              • updatedAt string(date-time) Required
              • id string Required
              • name string Required
              • slug string Required
              • email string Required
              • contact string Required
              • city string Required
              • state string Required
              • country string Required
              • description string Required
              • phone array[string] Required
              • isActive boolean Required
              • isPriority boolean
              • activePlan object Required

                The full record on routes that load it; null (or an empty list) on routes that do not.

                Hide activePlan attributes Show activePlan attributes object
                • createdAt string(date-time) Required
                • updatedAt string(date-time) Required
                • id string Required
                • subscription object | null Required

                  Not loaded on public routes, so always null there. Only the internal admin organization report loads it.

                • relatedSubscription array[object] | null Required

                  Not loaded by any route, so always null or an empty list.

                • organization object | null Required

                  Not loaded by any route, so always null.

                • seats number Required
                • seatsUsed number Required
                • devices number Required
                • deviceUsed number Required
                • storage number Required

                  Storage in bytes

                • storageUsed number Required

                  Storage used in bytes

                • payments array[object] | null Required

                  Not loaded by any route, so always null or an empty list.

                • type string Required

                  Values are admin, free, limited-access, trial, tier1, tier2, tier3, tier4, tier5, tier6, or tier7.

                • isActive boolean Required
                • isBetweenPlanChanges boolean Required
                • storageInKb number Required
                • storageUsedInKb number Required
                • storageInMb number Required
                • storageUsedInMb number Required
                • storageInGb number Required
                • storageUsedInGb number Required
                • storageInTb number Required
                • storageUsedInTb number Required
                • isFreePlan boolean Required
                • remainingSeats number Required
                • remainingDevices number Required
                • remainingStorage number Required

                  Storage left in bytes (storage minus storageUsed).

              • metadata object Required
              • type string Required
              • version string Required

                Values are v1, v2, eu, or ca.

            • permission object Required
              Hide permission attributes Show permission attributes object
              • createdAt string(date-time) Required
              • updatedAt string(date-time) Required
              • id string Required
              • user object Required

                The full record on routes that load it; null (or an empty list) on routes that do not.

                Hide user attributes Show user attributes object
                • createdAt string(date-time) Required
                • updatedAt string(date-time) Required
                • id string Required
                • name string Required
                • email string Required
                • phone array[string] Required
                • isActive boolean Required
                • isEmailVerified boolean Required
                • lastActive string(date-time) Required
                • roles array[string] Required
                • avatar object Required

                  The full record on routes that load it; null (or an empty list) on routes that do not.

                  Hide avatar attributes Show avatar attributes object
                  • createdAt string(date-time) Required
                  • updatedAt string(date-time) Required
                  • id string Required
                  • name string Required
                  • providerId string Required
                  • convertedName string | null Required
                  • convertedProviderId string Required
                  • provider string Required
                  • size number Required

                    Size in bytes

                  • transferState number | null Required
                • onboardingStatus string | null Required
                • userType string | null Required
                • firstName string Required
                • lastName string Required
                • initials string Required
                • userOrganizations array[object]

                  Only filled on the signed-in user's own profile; absent or empty on a user nested in another record.

              • role string Required

                Values are user, client, employee, billing, full_access, admin, owner, or member.

              • organization object | null Required

                Not loaded by any route, so always null.

              • lastActiveAt string(date-time) | null Required
            • billing object Required

              The org's plan, limits and resolved prices. null when the org is billed by the legacy model — either it has not been migrated to case billing or the feature is off.

              Hide billing attributes Show billing attributes object
              • tier string Required

                Values are public, solo, firm, or firm-plus.

              • tierName string Required
              • billingMode string Required

                Values are payg, per-source, or flat-case.

              • cadence string Required

                Values are monthly or annual.

              • baseFeeCents number Required

                Platform fee for one period at this cadence, in cents

              • paymentMethodOnFile boolean Required
              • supportTier string Required
              • limits object Required
                Hide limits attributes Show limits attributes object
                • seatCap number | null Required

                  null = unlimited

                • storageGB number Required
                • perCaseSourceCap number | null Required

                  Provisioned, not enforced — display only

              • features array[string] Required

                Feature keys enabled for this tier

              • prices array[object] Required
                Hide prices attributes Show prices attributes object
                • skuKey string Required

                  Values are collection.phone, collection.social, collection.email, collection.ai-chat, collection.financial, collection.discord, collection.reddit, collection.linkedin, collection.legal, collection.file, collection.other, case.flat, case.pro-upgrade, addon.kit-rental, addon.laptop-rental, addon.laptop-rental-setup, addon.managed-service, addon.shipping, addon.live-bank, plan.base, source.per, ai.tokens-overage, adjustment.manual, or adjustment.discount.

                • name string Required
                • unitAmountCents number Required

                  What this org is charged per unit, in cents

                • included boolean Required

                  Bundled by the plan — charged at 0, not billed

                • listAmountCents number | null Required

                  What an included item would otherwise have cost

                • overridden boolean Required

                  Set by this org's negotiated price rather than the plan's catalog rate

                • recurrence string | null Required

                  null for a one-time charge; otherwise how often it repeats

                  Values are monthly or semiannual.

                • freeFirstPeriod boolean Required

                  First period of a recurring item costs 0

              • overrides object Required

                This org's negotiated exceptions, as stored. An absent SKU means the plan's catalog rate applies — read prices for what is actually charged.

        • appConfig object
          Hide appConfig attributes Show appConfig attributes object
          • createdAt string(date-time) Required
          • updatedAt string(date-time) Required
          • id string Required
          • systemId string Required
          • deviceSettings array[object] | null Required

            The full record on routes that load it; null (or an empty list) on routes that do not.

            Hide deviceSettings attributes Show deviceSettings attributes object
            • createdAt string(date-time) Required
            • updatedAt string(date-time) Required
            • id string Required
            • systemId string Required
            • deviceId string Required
            • deviceType string Required

              Values are unknown, android, ios, facebook_dump, instagram_dump, threads_dump, or email.

            • backupPaths array[string] Required
            • defaultBackupPath string Required
            • lastUsedBackupPath string Required
            • device string | null Required

              Id of the device these settings belong to

            • lastBackupAt string(date-time) | null Required
            • lastLocalBackupAt string(date-time) | null Required
            • autoBackupFrequency string Required

              Values are none, daily, weekly, or monthly. Default value is none.

            • deviceMetadata object Required
            • otherSettings object Required
          • defaultBackupPath string Required
          • lastUsedBackupPath string Required
          • otherSettings object Required
          • osDetails object Required
            Hide osDetails attributes Show osDetails attributes object
            • arch string
            • platform string
            • version string
            • type string

              Never sent today: nothing fills it (the OS type is stored and sent as osType).

            • osType string

              Operating system type reported by the desktop app.

            • machine string
            • totalMemory number
            • cpus object
            • extraInformation object
          • lastAppUsedAt string(date-time) Required
          • lastUsedAppVersion string Required
          • defaultSettings object | null Required
        • extractionCodeDetails object
          Hide extractionCodeDetails attributes Show extractionCodeDetails attributes object
          • createdAt string(date-time) Required
          • updatedAt string(date-time) Required
          • id string Required
          • code string Required
          • email string Required
          • name string | null Required
          • phone string | null Required
          • isActive boolean Required
          • label string | null Required
          • config object Required
            Hide config attributes Show config attributes object
            • type string Required

              Values are allow_client, share_all, or auto_share. Default value is allow_client.

            • origin string | null Required
            • ignoreMediaPermissionAndroid boolean
            • dateRange object
              Hide dateRange attributes Show dateRange attributes object
              • start string(date-time) | null Required
              • end string(date-time) | null Required
            • appConfig object
              Hide appConfig attributes Show appConfig attributes object
              • conversionConcurrency array[object] Required
                Hide conversionConcurrency attributes Show conversionConcurrency attributes object
                • mediaType string Required

                  Values are images, video, audio, or documents.

                • concurrency array[number] Required
              • compressionConcurrency array[object] Required
                Hide compressionConcurrency attributes Show compressionConcurrency attributes object
                • mediaType string Required

                  Values are images, video, audio, or documents.

                • concurrency array[number] Required
              • enableLocalMediaConversion boolean
              • enableLocalMediaCompression boolean
              • enableIosEncryptedBackupExtraction boolean
              • allowOnlyEncryptedIosBackup boolean
              • autoIncludeSafariData boolean
              • autoIncludeNotesData boolean
              • autoIncludeContacts boolean

                Default value is false.

              • shareAction string

                Values are share, export, or share_and_export. Default value is share.

            • enableLocalExport object
              Hide enableLocalExport attributes Show enableLocalExport attributes object
              • formats array[string]
              • defaultConfig object
                Hide defaultConfig attributes Show defaultConfig attributes object
                • chunkType string Required

                  Values are year, month, week, day, or none.

                • includeAttachments boolean Required
            • allowClient object
              Hide allowClient attributes Show allowClient attributes object
              • allowSocialApps array[string] Required
              • allowShareAll boolean Required
            • autoShare object
              Hide autoShare attributes Show autoShare attributes object
              • allowClientApproval boolean Required
              • allowAdditionalShare boolean Required
              • searches array[object] Required
                Hide searches attributes Show searches attributes object
                • type string Required

                  Values are name, phone, keywords, or email. Default value is name.

                • values array[string] Required
                • apps array[string] Required
                • dateRange object Required
                  Hide dateRange attributes Show dateRange attributes object
                  • start string(date-time) | null Required
                  • end string(date-time) | null Required
                • exactMatch boolean Required
                • include boolean Required
                • conversationType string Required

                  Values are all, dm, or group. Default value is all.

            • shareAll object
              Hide shareAll attributes Show shareAll attributes object
              • apps array[string] Required
              • includeAttachments boolean Required
              • dateRange object
                Hide dateRange attributes Show dateRange attributes object
                • start string(date-time) | null Required
                • end string(date-time) | null Required
              • searchesExclude array[object]
                Hide searchesExclude attributes Show searchesExclude attributes object
                • type string Required

                  Values are name, phone, keywords, or email. Default value is name.

                • values array[string] Required
                • apps array[string] Required
                • exactMatch boolean Required
                • conversationType string Required

                  Values are all, dm, or group. Default value is all.

          • devices array[object] | null Required

            Not loaded by any route, so always null or an empty list.

          • totalDevicesCount number Required
          • dueDate string(date-time) | null
          • sendEmail boolean

            Default value is false.

          • lockedAt string(date-time) | null
          • hasDueDateCrossed boolean Required
          • status string Required
          • reviewStatus string | null Required

            Values are approved, rejected, not_reviewed, or na.

          • reviewMessage string | null Required
          • lastApprovedBy object Required

            The full record on routes that load it; null (or an empty list) on routes that do not.

            Hide lastApprovedBy attributes Show lastApprovedBy attributes object
            • createdAt string(date-time) Required
            • updatedAt string(date-time) Required
            • id string Required
            • name string Required
            • email string Required
            • phone array[string] Required
            • isActive boolean Required
            • isEmailVerified boolean Required
            • lastActive string(date-time) Required
            • roles array[string] Required
            • avatar object Required

              The full record on routes that load it; null (or an empty list) on routes that do not.

              Hide avatar attributes Show avatar attributes object
              • createdAt string(date-time) Required
              • updatedAt string(date-time) Required
              • id string Required
              • name string Required
              • providerId string Required
              • convertedName string | null Required
              • convertedProviderId string Required
              • provider string Required
              • size number Required

                Size in bytes

              • transferState number | null Required
            • onboardingStatus string | null Required
            • userType string | null Required
            • firstName string Required
            • lastName string Required
            • initials string Required
            • userOrganizations array[object]

              Only filled on the signed-in user's own profile; absent or empty on a user nested in another record.

          • ocReviewedByOrg object Required

            The full record on routes that load it; null (or an empty list) on routes that do not.

            Hide ocReviewedByOrg attributes Show ocReviewedByOrg attributes object
            • createdAt string(date-time) Required
            • updatedAt string(date-time) Required
            • id string Required
            • name string Required
            • slug string Required
            • email string Required
            • contact string Required
            • city string Required
            • state string Required
            • country string Required
            • description string Required
            • phone array[string] Required
            • isActive boolean Required
            • isPriority boolean
            • activePlan object Required

              The full record on routes that load it; null (or an empty list) on routes that do not.

              Hide activePlan attributes Show activePlan attributes object
              • createdAt string(date-time) Required
              • updatedAt string(date-time) Required
              • id string Required
              • subscription object | null Required

                Not loaded on public routes, so always null there. Only the internal admin organization report loads it.

              • relatedSubscription array[object] | null Required

                Not loaded by any route, so always null or an empty list.

              • organization object | null Required

                Not loaded by any route, so always null.

              • seats number Required
              • seatsUsed number Required
              • devices number Required
              • deviceUsed number Required
              • storage number Required

                Storage in bytes

              • storageUsed number Required

                Storage used in bytes

              • payments array[object] | null Required

                Not loaded by any route, so always null or an empty list.

              • type string Required

                Values are admin, free, limited-access, trial, tier1, tier2, tier3, tier4, tier5, tier6, or tier7.

              • isActive boolean Required
              • isBetweenPlanChanges boolean Required
              • storageInKb number Required
              • storageUsedInKb number Required
              • storageInMb number Required
              • storageUsedInMb number Required
              • storageInGb number Required
              • storageUsedInGb number Required
              • storageInTb number Required
              • storageUsedInTb number Required
              • isFreePlan boolean Required
              • remainingSeats number Required
              • remainingDevices number Required
              • remainingStorage number Required

                Storage left in bytes (storage minus storageUsed).

            • metadata object Required
            • type string Required
            • version string Required

              Values are v1, v2, eu, or ca.

          • ocReviewedAt string(date-time) | null Required
          • ocRequired boolean Required

            Default value is true.

          • allowShareAll boolean Required Deprecated
          • metadata object Required
          • logsConfig object Required
          • sources array[object]
            Hide sources attributes Show sources attributes object
            • createdAt string(date-time) Required
            • updatedAt string(date-time) Required
            • id string Required
            • case object | null Required

              Not loaded by any route, so always null.

            • extractionCode object | null Required

              Not loaded by any route, so always null.

            • dataSource object Required

              The full record on routes that load it; null (or an empty list) on routes that do not.

              Hide dataSource attributes Show dataSource attributes object
              • createdAt string(date-time) Required
              • updatedAt string(date-time) Required
              • id string Required
              • name string Required
              • displayName string Required
              • category string Required
              • config object | null Required

                Collection options for this source. The keys below are the ones the code reads, for device sources (ios, android).

                Additional properties are allowed.

                Hide config attributes Show config attributes object | null
                • iosEnableEncryptedBackup boolean
                • iosAllowOnlyEncryptedBackup boolean
                • iosAutoIncludeSafariData boolean
                • iosAutoIncludeNotesData boolean
                • androidIgnoreMediaPermission boolean
                • iosAllApps array[string]
                • iosAllowedApps array[string]
                • androidAllApps array[string]
                • androidAllowedApps array[string]
            • caseDataSource object Required

              The full record on routes that load it; null (or an empty list) on routes that do not.

              Hide caseDataSource attributes Show caseDataSource attributes object
              • createdAt string(date-time) Required
              • updatedAt string(date-time) Required
              • id string Required
              • case object | null Required

                Not loaded by any route, so always null.

              • dataSource object Required

                The full record on routes that load it; null (or an empty list) on routes that do not.

                Hide dataSource attributes Show dataSource attributes object
                • createdAt string(date-time) Required
                • updatedAt string(date-time) Required
                • id string Required
                • name string Required
                • displayName string Required
                • category string Required
                • config object | null Required

                  Collection options for this source. The keys below are the ones the code reads, for device sources (ios, android).

                  Additional properties are allowed.

                  Hide config attributes Show config attributes object | null
                  • iosEnableEncryptedBackup boolean
                  • iosAllowOnlyEncryptedBackup boolean
                  • iosAutoIncludeSafariData boolean
                  • iosAutoIncludeNotesData boolean
                  • androidIgnoreMediaPermission boolean
                  • iosAllApps array[string]
                  • iosAllowedApps array[string]
                  • androidAllApps array[string]
                  • androidAllowedApps array[string]
              • config object | null Required
            • config object | null Required
          • payment object | null Required
        • caseDetails object

          Sent only by the extraction-code login

          Hide caseDetails attributes Show caseDetails attributes object
          • createdAt string(date-time) Required
          • updatedAt string(date-time) Required
          • id string Required
          • name string Required
          • slug string Required
          • description string | null Required
          • matterId string | null
          • status string Required

            Values are open, closed, archived, or pending.

          • assignStatus string Required

            Values are assigned or unassigned.

          • createdBy object Required

            The full record on routes that load it; null (or an empty list) on routes that do not.

            Hide createdBy attributes Show createdBy attributes object
            • createdAt string(date-time) Required
            • updatedAt string(date-time) Required
            • id string Required
            • name string Required
            • email string Required
            • phone array[string] Required
            • isActive boolean Required
            • isEmailVerified boolean Required
            • lastActive string(date-time) Required
            • roles array[string] Required
            • avatar object Required

              The full record on routes that load it; null (or an empty list) on routes that do not.

              Hide avatar attributes Show avatar attributes object
              • createdAt string(date-time) Required
              • updatedAt string(date-time) Required
              • id string Required
              • name string Required
              • providerId string Required
              • convertedName string | null Required
              • convertedProviderId string Required
              • provider string Required
              • size number Required

                Size in bytes

              • transferState number | null Required
            • onboardingStatus string | null Required
            • userType string | null Required
            • firstName string Required
            • lastName string Required
            • initials string Required
            • userOrganizations array[object]

              Only filled on the signed-in user's own profile; absent or empty on a user nested in another record.

          • assignedTo array[string] Required

            Assigned user ids

          • organization object Required

            The full record on routes that load it; null (or an empty list) on routes that do not.

            Hide organization attributes Show organization attributes object
            • createdAt string(date-time) Required
            • updatedAt string(date-time) Required
            • id string Required
            • name string Required
            • slug string Required
            • email string Required
            • contact string Required
            • city string Required
            • state string Required
            • country string Required
            • description string Required
            • phone array[string] Required
            • isActive boolean Required
            • isPriority boolean
            • activePlan object Required

              The full record on routes that load it; null (or an empty list) on routes that do not.

              Hide activePlan attributes Show activePlan attributes object
              • createdAt string(date-time) Required
              • updatedAt string(date-time) Required
              • id string Required
              • subscription object | null Required

                Not loaded on public routes, so always null there. Only the internal admin organization report loads it.

              • relatedSubscription array[object] | null Required

                Not loaded by any route, so always null or an empty list.

              • organization object | null Required

                Not loaded by any route, so always null.

              • seats number Required
              • seatsUsed number Required
              • devices number Required
              • deviceUsed number Required
              • storage number Required

                Storage in bytes

              • storageUsed number Required

                Storage used in bytes

              • payments array[object] | null Required

                Not loaded by any route, so always null or an empty list.

              • type string Required

                Values are admin, free, limited-access, trial, tier1, tier2, tier3, tier4, tier5, tier6, or tier7.

              • isActive boolean Required
              • isBetweenPlanChanges boolean Required
              • storageInKb number Required
              • storageUsedInKb number Required
              • storageInMb number Required
              • storageUsedInMb number Required
              • storageInGb number Required
              • storageUsedInGb number Required
              • storageInTb number Required
              • storageUsedInTb number Required
              • isFreePlan boolean Required
              • remainingSeats number Required
              • remainingDevices number Required
              • remainingStorage number Required

                Storage left in bytes (storage minus storageUsed).

            • metadata object Required
            • type string Required
            • version string Required

              Values are v1, v2, eu, or ca.

          • isActive boolean Required
          • priority string Required

            Values are low, medium, high, or urgent.

          • attachedDevices array[string] Required

            Attached device ids

          • totalConversations number Required
          • archivedBy object | null Required

            Not loaded by any route, so always null.

          • exportJobId string | null Required
          • metadata object Required
          • extractionCodePaymentThreadId string | null Required
          • ocCase boolean Required
          • isOcShared boolean Required
          • proEnabled boolean Required
          • isArchived boolean Required
        • collectionEventsEnabled boolean

          Desktop/portal should send collection events and heartbeats

      • organization object Required
        Hide organization attributes Show organization attributes object
        • organization object Required
          Hide organization attributes Show organization attributes object
          • createdAt string(date-time) Required
          • updatedAt string(date-time) Required
          • id string Required
          • name string Required
          • slug string Required
          • email string Required
          • contact string Required
          • city string Required
          • state string Required
          • country string Required
          • description string Required
          • phone array[string] Required
          • isActive boolean Required
          • isPriority boolean
          • activePlan object | null Required

            Not loaded on this route, so always null.

          • metadata object Required
          • type string Required
          • version string Required

            Values are v1, v2, eu, or ca.

        • permission object Required
          Hide permission attributes Show permission attributes object
          • createdAt string(date-time) Required
          • updatedAt string(date-time) Required
          • id string Required
          • user object | null Required

            Not loaded on this route, so always null.

          • role string Required

            Values are user, client, employee, billing, full_access, admin, owner, or member.

          • organization object | null Required

            Not loaded on this route, so always null.

          • lastActiveAt string(date-time) | null Required
        • billing object Required

          The org's plan, limits and resolved prices. null when the org is billed by the legacy model — either it has not been migrated to case billing or the feature is off.

          Hide billing attributes Show billing attributes object
          • tier string Required

            Values are public, solo, firm, or firm-plus.

          • tierName string Required
          • billingMode string Required

            Values are payg, per-source, or flat-case.

          • cadence string Required

            Values are monthly or annual.

          • baseFeeCents number Required

            Platform fee for one period at this cadence, in cents

          • paymentMethodOnFile boolean Required
          • supportTier string Required
          • limits object Required
            Hide limits attributes Show limits attributes object
            • seatCap number | null Required

              null = unlimited

            • storageGB number Required
            • perCaseSourceCap number | null Required

              Provisioned, not enforced — display only

          • features array[string] Required

            Feature keys enabled for this tier

          • prices array[object] Required
            Hide prices attributes Show prices attributes object
            • skuKey string Required

              Values are collection.phone, collection.social, collection.email, collection.ai-chat, collection.financial, collection.discord, collection.reddit, collection.linkedin, collection.legal, collection.file, collection.other, case.flat, case.pro-upgrade, addon.kit-rental, addon.laptop-rental, addon.laptop-rental-setup, addon.managed-service, addon.shipping, addon.live-bank, plan.base, source.per, ai.tokens-overage, adjustment.manual, or adjustment.discount.

            • name string Required
            • unitAmountCents number Required

              What this org is charged per unit, in cents

            • included boolean Required

              Bundled by the plan — charged at 0, not billed

            • listAmountCents number | null Required

              What an included item would otherwise have cost

            • overridden boolean Required

              Set by this org's negotiated price rather than the plan's catalog rate

            • recurrence string | null Required

              null for a one-time charge; otherwise how often it repeats

              Values are monthly or semiannual.

            • freeFirstPeriod boolean Required

              First period of a recurring item costs 0

          • overrides object Required

            This org's negotiated exceptions, as stored. An absent SKU means the plan's catalog rate applies — read prices for what is actually charged.

    • statusCode number Required
    • timestamp string(date-time) Required
POST /organization/{orgId}/invitation/accept
curl \
 --request POST 'http://api.example.com/organization/{orgId}/invitation/accept' \
 --header "Authorization: Bearer $ACCESS_TOKEN" \
 --header "Content-Type: application/json" \
 --data '{
  "token": "string",
  "email": "string",
  "name": "string",
  "password": "string"
}'
Request examples
{
  "token": "string",
  "email": "string",
  "name": "string",
  "password": "string"
}
Response examples (201)
{
  "data": {
    "login": {
      "createdAt": "2026-01-15T14:30:00.000Z",
      "updatedAt": "2026-01-15T14:30:00.000Z",
      "id": "507f1f77bcf86cd799439011",
      "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI2NWExYjJjMyJ9.c2lnbmF0dXJl",
      "refreshToken": "b7c1e2f0a9d84c3e8f6a5b4c3d2e1f00",
      "userProfile": {
        "createdAt": "2026-01-15T14:30:00.000Z",
        "updatedAt": "2026-01-15T14:30:00.000Z",
        "id": "507f1f77bcf86cd799439011",
        "name": "Jane Doe",
        "email": "jane.doe@example.com",
        "phone": [
          "+15555550100"
        ],
        "isActive": true,
        "isEmailVerified": true,
        "lastActive": "2026-01-15T14:30:00.000Z",
        "roles": [
          "user"
        ],
        "avatar": {
          "createdAt": "2026-01-15T14:30:00.000Z",
          "updatedAt": "2026-01-15T14:30:00.000Z",
          "id": "507f1f77bcf86cd799439011",
          "name": "photo.heic",
          "providerId": "uploads/507f1f77bcf86cd799439011/photo.heic",
          "convertedName": "photo.jpg",
          "convertedProviderId": "uploads/507f1f77bcf86cd799439011/photo.jpg",
          "provider": "s3",
          "size": 204800,
          "transferState": 42.0
        },
        "onboardingStatus": "completed",
        "userType": "attorney",
        "firstName": "Jane",
        "lastName": "Doe",
        "initials": "JD",
        "userOrganizations": [
          {
            "organization": {
              "createdAt": "2026-01-15T14:30:00.000Z",
              "updatedAt": "2026-01-15T14:30:00.000Z",
              "id": "507f1f77bcf86cd799439011",
              "name": "Example Law LLP",
              "slug": "example-law-llp",
              "email": "office@example.com",
              "contact": "Jane Doe",
              "city": "New York",
              "state": "NY",
              "country": "US",
              "description": "Litigation practice",
              "phone": [
                "+15555550100"
              ],
              "logo": "https://files.example.com/logo.png",
              "isActive": true,
              "isPriority": false,
              "activePlan": {
                "createdAt": "2026-01-15T14:30:00.000Z",
                "updatedAt": "2026-01-15T14:30:00.000Z",
                "id": "507f1f77bcf86cd799439011",
                "subscription": {},
                "relatedSubscription": [
                  {}
                ],
                "organization": {},
                "seats": 5,
                "seatsUsed": 3,
                "devices": 10,
                "deviceUsed": 4,
                "storage": 100000000000,
                "storageUsed": 12000000000,
                "payments": [
                  {}
                ],
                "type": "admin",
                "isActive": true,
                "isBetweenPlanChanges": false,
                "storageInKb": 100000000,
                "storageUsedInKb": 12000000,
                "storageInMb": 100000,
                "storageUsedInMb": 12000,
                "storageInGb": 100,
                "storageUsedInGb": 12,
                "storageInTb": 0.1,
                "storageUsedInTb": 0.012,
                "isFreePlan": false,
                "remainingSeats": 2,
                "remainingDevices": 6,
                "remainingStorage": 88000000000
              },
              "metadata": {},
              "type": "law_firm",
              "version": "v1"
            },
            "permission": {
              "createdAt": "2026-01-15T14:30:00.000Z",
              "updatedAt": "2026-01-15T14:30:00.000Z",
              "id": "507f1f77bcf86cd799439011",
              "user": {
                "createdAt": "2026-01-15T14:30:00.000Z",
                "updatedAt": "2026-01-15T14:30:00.000Z",
                "id": "507f1f77bcf86cd799439011",
                "name": "Jane Doe",
                "email": "jane.doe@example.com",
                "phone": [
                  "+15555550100"
                ],
                "isActive": true,
                "isEmailVerified": true,
                "lastActive": "2026-01-15T14:30:00.000Z",
                "roles": [
                  "user"
                ],
                "avatar": {
                  "createdAt": "2026-01-15T14:30:00.000Z",
                  "updatedAt": "2026-01-15T14:30:00.000Z",
                  "id": "507f1f77bcf86cd799439011",
                  "name": "photo.heic",
                  "providerId": "uploads/507f1f77bcf86cd799439011/photo.heic",
                  "convertedName": "photo.jpg",
                  "convertedProviderId": "uploads/507f1f77bcf86cd799439011/photo.jpg",
                  "provider": "s3",
                  "size": 204800,
                  "transferState": 42.0
                },
                "onboardingStatus": "completed",
                "userType": "attorney",
                "firstName": "Jane",
                "lastName": "Doe",
                "initials": "JD",
                "userOrganizations": [
                  {}
                ]
              },
              "role": "member",
              "organization": {},
              "lastActiveAt": "2026-01-15T14:30:00.000Z"
            },
            "billing": {
              "tier": "firm",
              "tierName": "Firm",
              "billingMode": "per-source",
              "cadence": "monthly",
              "baseFeeCents": 24900,
              "paymentMethodOnFile": true,
              "supportTier": "next-day",
              "limits": {
                "seatCap": 10,
                "storageGB": 5000,
                "perCaseSourceCap": 42.0
              },
              "features": [
                "rsmf",
                "ai",
                "mcp",
                "whiteLabel"
              ],
              "prices": [
                {
                  "skuKey": "collection.phone",
                  "name": "Phone collection",
                  "unitAmountCents": 17900,
                  "included": false,
                  "listAmountCents": 42.0,
                  "overridden": false,
                  "recurrence": "monthly",
                  "freeFirstPeriod": false
                }
              ],
              "overrides": {
                "skuUnitAmountCents": {
                  "collection.phone": 9900
                }
              }
            }
          }
        ]
      },
      "appConfig": {
        "createdAt": "2026-01-15T14:30:00.000Z",
        "updatedAt": "2026-01-15T14:30:00.000Z",
        "id": "507f1f77bcf86cd799439011",
        "systemId": "3f8e1c5a9b2d4e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f",
        "deviceSettings": [
          {
            "createdAt": "2026-01-15T14:30:00.000Z",
            "updatedAt": "2026-01-15T14:30:00.000Z",
            "id": "507f1f77bcf86cd799439011",
            "systemId": "3f8e1c5a9b2d4e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d3e4f5a6b7c8d9e0f",
            "deviceId": "00008110-001A2B3C4D5E",
            "deviceType": "unknown",
            "backupPaths": [
              "/Users/jane/HearsayBackups"
            ],
            "defaultBackupPath": "/Users/jane/HearsayBackups",
            "lastUsedBackupPath": "/Users/jane/HearsayBackups",
            "device": "507f1f77bcf86cd799439011",
            "lastBackupAt": "2026-01-15T14:30:00.000Z",
            "lastLocalBackupAt": "2026-01-15T14:30:00.000Z",
            "autoBackupFrequency": "none",
            "deviceMetadata": {
              "name": "Jane Doe's iPhone",
              "productType": "iPhone15,2",
              "productVersion": "17.4.1",
              "timeZone": "America/Chicago"
            },
            "otherSettings": {}
          }
        ],
        "defaultBackupPath": "/Users/jane/HearsayBackups",
        "lastUsedBackupPath": "/Users/jane/HearsayBackups",
        "otherSettings": {},
        "osDetails": {
          "arch": "arm64",
          "platform": "darwin",
          "version": "14.4",
          "type": "Darwin",
          "osType": "Darwin",
          "machine": "arm64",
          "totalMemory": 17179869184,
          "cpus": {},
          "extraInformation": {
            "cpu": {
              "manufacturer": "Apple",
              "brand": "M2",
              "physicalCores": 8
            },
            "mem": {
              "total": 17179869184
            },
            "osInfo": {
              "platform": "darwin",
              "distro": "macOS",
              "release": "14.4",
              "arch": "arm64"
            },
            "battery": {
              "hasBattery": true,
              "percent": 80
            }
          }
        },
        "lastAppUsedAt": "2026-01-15T14:30:00.000Z",
        "lastUsedAppVersion": "2.1.15",
        "defaultSettings": {
          "contactAdminDeviceRequestText": "Please add another device to my account."
        }
      },
      "extractionCodeDetails": {
        "createdAt": "2026-01-15T14:30:00.000Z",
        "updatedAt": "2026-01-15T14:30:00.000Z",
        "id": "507f1f77bcf86cd799439011",
        "code": "K7Q2-9XPL",
        "email": "jane.doe@example.com",
        "name": "Jane Doe",
        "phone": "+15555550100",
        "isActive": true,
        "label": "Primary phone",
        "config": {
          "type": "allow_client",
          "origin": "Website",
          "ignoreMediaPermissionAndroid": false,
          "dateRange": {
            "start": "2026-05-04T09:42:00Z",
            "end": "2026-05-04T09:42:00Z"
          },
          "appConfig": {
            "conversionConcurrency": [
              {
                "mediaType": "images",
                "concurrency": [
                  4,
                  6,
                  12,
                  16
                ]
              }
            ],
            "compressionConcurrency": [
              {
                "mediaType": "images",
                "concurrency": [
                  4,
                  6,
                  12,
                  16
                ]
              }
            ],
            "enableLocalMediaConversion": true,
            "enableLocalMediaCompression": true,
            "enableIosEncryptedBackupExtraction": false,
            "allowOnlyEncryptedIosBackup": false,
            "autoIncludeSafariData": false,
            "autoIncludeNotesData": false,
            "autoIncludeContacts": false,
            "shareAction": "share"
          },
          "enableLocalExport": {
            "formats": [
              "pdf"
            ],
            "defaultConfig": {
              "chunkType": "year",
              "includeAttachments": true
            }
          },
          "allowClient": {
            "allowSocialApps": [
              "whatsapp"
            ],
            "allowShareAll": false
          },
          "autoShare": {
            "allowClientApproval": false,
            "allowAdditionalShare": false,
            "searches": [
              {
                "type": "name",
                "values": [
                  "Jane Doe"
                ],
                "apps": [
                  "whatsapp"
                ],
                "dateRange": {
                  "start": "2026-05-04T09:42:00Z",
                  "end": "2026-05-04T09:42:00Z"
                },
                "exactMatch": false,
                "include": true,
                "conversationType": "all"
              }
            ]
          },
          "shareAll": {
            "apps": [
              "whatsapp"
            ],
            "includeAttachments": true,
            "dateRange": {
              "start": "2026-05-04T09:42:00Z",
              "end": "2026-05-04T09:42:00Z"
            },
            "searchesExclude": [
              {
                "type": "name",
                "values": [
                  "Jane Doe"
                ],
                "apps": [
                  "whatsapp"
                ],
                "exactMatch": false,
                "conversationType": "all"
              }
            ]
          }
        },
        "devices": [
          {}
        ],
        "totalDevicesCount": 1,
        "dueDate": "2026-01-15T14:30:00.000Z",
        "sendEmail": true,
        "lockedAt": "2026-05-04T09:42:00Z",
        "hasDueDateCrossed": false,
        "status": "pending",
        "reviewStatus": "approved",
        "reviewMessage": "string",
        "lastApprovedBy": {
          "createdAt": "2026-01-15T14:30:00.000Z",
          "updatedAt": "2026-01-15T14:30:00.000Z",
          "id": "507f1f77bcf86cd799439011",
          "name": "Jane Doe",
          "email": "jane.doe@example.com",
          "phone": [
            "+15555550100"
          ],
          "isActive": true,
          "isEmailVerified": true,
          "lastActive": "2026-01-15T14:30:00.000Z",
          "roles": [
            "user"
          ],
          "avatar": {
            "createdAt": "2026-01-15T14:30:00.000Z",
            "updatedAt": "2026-01-15T14:30:00.000Z",
            "id": "507f1f77bcf86cd799439011",
            "name": "photo.heic",
            "providerId": "uploads/507f1f77bcf86cd799439011/photo.heic",
            "convertedName": "photo.jpg",
            "convertedProviderId": "uploads/507f1f77bcf86cd799439011/photo.jpg",
            "provider": "s3",
            "size": 204800,
            "transferState": 42.0
          },
          "onboardingStatus": "completed",
          "userType": "attorney",
          "firstName": "Jane",
          "lastName": "Doe",
          "initials": "JD",
          "userOrganizations": [
            {}
          ]
        },
        "ocReviewedByOrg": {
          "createdAt": "2026-01-15T14:30:00.000Z",
          "updatedAt": "2026-01-15T14:30:00.000Z",
          "id": "507f1f77bcf86cd799439011",
          "name": "Example Law LLP",
          "slug": "example-law-llp",
          "email": "office@example.com",
          "contact": "Jane Doe",
          "city": "New York",
          "state": "NY",
          "country": "US",
          "description": "Litigation practice",
          "phone": [
            "+15555550100"
          ],
          "logo": "https://files.example.com/logo.png",
          "isActive": true,
          "isPriority": false,
          "activePlan": {
            "createdAt": "2026-01-15T14:30:00.000Z",
            "updatedAt": "2026-01-15T14:30:00.000Z",
            "id": "507f1f77bcf86cd799439011",
            "subscription": {},
            "relatedSubscription": [
              {}
            ],
            "organization": {},
            "seats": 5,
            "seatsUsed": 3,
            "devices": 10,
            "deviceUsed": 4,
            "storage": 100000000000,
            "storageUsed": 12000000000,
            "payments": [
              {}
            ],
            "type": "admin",
            "isActive": true,
            "isBetweenPlanChanges": false,
            "storageInKb": 100000000,
            "storageUsedInKb": 12000000,
            "storageInMb": 100000,
            "storageUsedInMb": 12000,
            "storageInGb": 100,
            "storageUsedInGb": 12,
            "storageInTb": 0.1,
            "storageUsedInTb": 0.012,
            "isFreePlan": false,
            "remainingSeats": 2,
            "remainingDevices": 6,
            "remainingStorage": 88000000000
          },
          "metadata": {},
          "type": "law_firm",
          "version": "v1"
        },
        "ocReviewedAt": "2026-05-04T09:42:00Z",
        "ocRequired": true,
        "allowShareAll": false,
        "metadata": {},
        "logsConfig": {},
        "sources": [
          {
            "createdAt": "2026-01-15T14:30:00.000Z",
            "updatedAt": "2026-01-15T14:30:00.000Z",
            "id": "507f1f77bcf86cd799439011",
            "case": {},
            "extractionCode": {},
            "dataSource": {
              "createdAt": "2026-01-15T14:30:00.000Z",
              "updatedAt": "2026-01-15T14:30:00.000Z",
              "id": "507f1f77bcf86cd799439011",
              "name": "gmail",
              "displayName": "Gmail",
              "category": "email",
              "config": {
                "iosEnableEncryptedBackup": true,
                "iosAllowOnlyEncryptedBackup": false,
                "iosAllApps": [
                  "messages",
                  "call_log",
                  "whatsapp",
                  "photos"
                ],
                "iosAllowedApps": [
                  "messages",
                  "call_log"
                ]
              }
            },
            "caseDataSource": {
              "createdAt": "2026-01-15T14:30:00.000Z",
              "updatedAt": "2026-01-15T14:30:00.000Z",
              "id": "507f1f77bcf86cd799439011",
              "case": {},
              "dataSource": {
                "createdAt": "2026-01-15T14:30:00.000Z",
                "updatedAt": "2026-01-15T14:30:00.000Z",
                "id": "507f1f77bcf86cd799439011",
                "name": "gmail",
                "displayName": "Gmail",
                "category": "email",
                "config": {
                  "iosEnableEncryptedBackup": true,
                  "iosAllowOnlyEncryptedBackup": false,
                  "iosAllApps": [
                    "messages",
                    "call_log",
                    "whatsapp",
                    "photos"
                  ],
                  "iosAllowedApps": [
                    "messages",
                    "call_log"
                  ]
                }
              },
              "config": {
                "iosEnableEncryptedBackup": true,
                "iosAllowOnlyEncryptedBackup": false,
                "iosAutoIncludeSafariData": true,
                "iosAutoIncludeNotesData": false,
                "iosAllowedApps": [
                  "messages",
                  "call_log",
                  "whatsapp"
                ]
              }
            },
            "config": {
              "iosEnableEncryptedBackup": true,
              "iosAllowOnlyEncryptedBackup": false,
              "iosAllApps": [
                "messages",
                "call_log",
                "whatsapp",
                "photos"
              ],
              "iosAllowedApps": [
                "messages",
                "call_log"
              ]
            }
          }
        ],
        "payment": {}
      },
      "caseDetails": {
        "createdAt": "2026-01-15T14:30:00.000Z",
        "updatedAt": "2026-01-15T14:30:00.000Z",
        "id": "507f1f77bcf86cd799439011",
        "name": "Doe v. Example Corp",
        "slug": "doe-v-example-corp",
        "description": "Employment dispute",
        "matterId": "MAT-0042",
        "status": "open",
        "assignStatus": "assigned",
        "createdBy": {
          "createdAt": "2026-01-15T14:30:00.000Z",
          "updatedAt": "2026-01-15T14:30:00.000Z",
          "id": "507f1f77bcf86cd799439011",
          "name": "Jane Doe",
          "email": "jane.doe@example.com",
          "phone": [
            "+15555550100"
          ],
          "isActive": true,
          "isEmailVerified": true,
          "lastActive": "2026-01-15T14:30:00.000Z",
          "roles": [
            "user"
          ],
          "avatar": {
            "createdAt": "2026-01-15T14:30:00.000Z",
            "updatedAt": "2026-01-15T14:30:00.000Z",
            "id": "507f1f77bcf86cd799439011",
            "name": "photo.heic",
            "providerId": "uploads/507f1f77bcf86cd799439011/photo.heic",
            "convertedName": "photo.jpg",
            "convertedProviderId": "uploads/507f1f77bcf86cd799439011/photo.jpg",
            "provider": "s3",
            "size": 204800,
            "transferState": 42.0
          },
          "onboardingStatus": "completed",
          "userType": "attorney",
          "firstName": "Jane",
          "lastName": "Doe",
          "initials": "JD",
          "userOrganizations": [
            {}
          ]
        },
        "assignedTo": [
          "507f1f77bcf86cd799439011"
        ],
        "organization": {
          "createdAt": "2026-01-15T14:30:00.000Z",
          "updatedAt": "2026-01-15T14:30:00.000Z",
          "id": "507f1f77bcf86cd799439011",
          "name": "Example Law LLP",
          "slug": "example-law-llp",
          "email": "office@example.com",
          "contact": "Jane Doe",
          "city": "New York",
          "state": "NY",
          "country": "US",
          "description": "Litigation practice",
          "phone": [
            "+15555550100"
          ],
          "logo": "https://files.example.com/logo.png",
          "isActive": true,
          "isPriority": false,
          "activePlan": {
            "createdAt": "2026-01-15T14:30:00.000Z",
            "updatedAt": "2026-01-15T14:30:00.000Z",
            "id": "507f1f77bcf86cd799439011",
            "subscription": {},
            "relatedSubscription": [
              {}
            ],
            "organization": {},
            "seats": 5,
            "seatsUsed": 3,
            "devices": 10,
            "deviceUsed": 4,
            "storage": 100000000000,
            "storageUsed": 12000000000,
            "payments": [
              {}
            ],
            "type": "admin",
            "isActive": true,
            "isBetweenPlanChanges": false,
            "storageInKb": 100000000,
            "storageUsedInKb": 12000000,
            "storageInMb": 100000,
            "storageUsedInMb": 12000,
            "storageInGb": 100,
            "storageUsedInGb": 12,
            "storageInTb": 0.1,
            "storageUsedInTb": 0.012,
            "isFreePlan": false,
            "remainingSeats": 2,
            "remainingDevices": 6,
            "remainingStorage": 88000000000
          },
          "metadata": {},
          "type": "law_firm",
          "version": "v1"
        },
        "isActive": true,
        "priority": "medium",
        "attachedDevices": [
          "507f1f77bcf86cd799439012"
        ],
        "totalConversations": 128,
        "archivedBy": {},
        "exportJobId": "job-1234",
        "metadata": {},
        "extractionCodePaymentThreadId": "string",
        "ocCase": false,
        "isOcShared": false,
        "proEnabled": false,
        "isArchived": false
      },
      "collectionEventsEnabled": true
    },
    "organization": {
      "organization": {
        "createdAt": "2026-01-15T14:30:00.000Z",
        "updatedAt": "2026-01-15T14:30:00.000Z",
        "id": "507f1f77bcf86cd799439011",
        "name": "Example Law LLP",
        "slug": "example-law-llp",
        "email": "office@example.com",
        "contact": "Jane Doe",
        "city": "New York",
        "state": "NY",
        "country": "US",
        "description": "Litigation practice",
        "phone": [
          "+15555550100"
        ],
        "logo": "https://files.example.com/logo.png",
        "isActive": true,
        "isPriority": false,
        "activePlan": {},
        "metadata": {},
        "type": "law_firm",
        "version": "v1"
      },
      "permission": {
        "createdAt": "2026-01-15T14:30:00.000Z",
        "updatedAt": "2026-01-15T14:30:00.000Z",
        "id": "507f1f77bcf86cd799439011",
        "user": {},
        "role": "member",
        "organization": {},
        "lastActiveAt": "2026-01-15T14:30:00.000Z"
      },
      "billing": {
        "tier": "firm",
        "tierName": "Firm",
        "billingMode": "per-source",
        "cadence": "monthly",
        "baseFeeCents": 24900,
        "paymentMethodOnFile": true,
        "supportTier": "next-day",
        "limits": {
          "seatCap": 10,
          "storageGB": 5000,
          "perCaseSourceCap": 42.0
        },
        "features": [
          "rsmf",
          "ai",
          "mcp",
          "whiteLabel"
        ],
        "prices": [
          {
            "skuKey": "collection.phone",
            "name": "Phone collection",
            "unitAmountCents": 17900,
            "included": false,
            "listAmountCents": 42.0,
            "overridden": false,
            "recurrence": "monthly",
            "freeFirstPeriod": false
          }
        ],
        "overrides": {
          "skuUnitAmountCents": {
            "collection.phone": 9900
          }
        }
      }
    }
  },
  "statusCode": 201,
  "timestamp": "2026-01-15T10:15:00.000Z"
}