openapi: 3.0.0 info: version: 0.0.2 title: Superhuman Docs Admin Account Events API license: name: Superhuman Developer Terms url: https://docs.superhuman.com/trust/developer description: "# Introduction\n\nThe Superhuman Docs Admin API is a RESTful API that allows programmatic access to administrative reports & capabilities within Superhuman Docs (formerly Coda).\n\nAccess to the Admin API is limited to enterprise organizations.\nOnly organization admins can use the Admin API for resources related to their organization.\n\nAs we update and release newer versions of the API, we reserve the right to remove\nolder APIs and functionality with a 3-month deprecation notice. We will post about such changes as well as announce\nnew features in the [Developers Central](https://connect.superhuman.com/c/developers-central) section of our Community,\nand update the [API updates](https://docs.superhuman.com/api-updates) doc.\n\n# Using the Admin API\n\nThe Superhuman Docs Admin REST API is designed to be straightforward to use. You can use the language and platform of your choice\nto make requests. To get a feel for the API, you can also use a tool like [Postman](https://www.getpostman.com/) or\n[Insomnia](https://insomnia.rest/).\n\n## API Endpoint\n\nThis API uses a base path of `https://docs.superhuman.com/apis/admin/v1`.\n\n## Object Hierarchy\n\n### Organizations\n\nEnterprise customers have access to the Organization, an object that contains policy, rules, and audit events\nfor a set of workspaces and one or more domains. Users accessing Superhuman Docs via an Organization-registered domain are\nsubject to that Organization's policies including allowed forms of authentication,\ndoc & Pack sharing restrictions, etc.\n\n### Workspaces\n\nA workspace is your home base for all things Superhuman Docs. It will store your documents in an organized way, and you'll invite\nmembers into the workspace to help you get the job done. A workspace can be free or paid (depending on your plan),\nand as the workspace's Doc Maker or Doc Maker (Admin), you'll be able to dictate the rules for how it works.\n\n[Learn more about Workspaces in our help center](https://help.coda.io/hc/en-us/articles/39555775119117-Create-and-manage-your-Coda-workspace).\n\n### Folders\n\nWe use folders to keep docs organized in the workspace (think departments, teams, and projects). Your docs are\nwhere the true work gets done with all of your tables, text, and app-like solutions. Folders contain docs within\nthe workspace.\n\n[Learn more about Folders in our help center](https://help.coda.io/hc/en-us/articles/39555852126605-Create-and-share-folders).\n\n### Docs\n\nDocuments are foundational, top-level collaborative projects that contain pages.\n\n### Pack configurations\n\nPack configurations are the settings that define how a Pack may be used within an organization.\n\n### Pack configuration permissions\n\nPack configuration permissions are the settings that define which principals may use a Pack configuration.\n\n### Pack requests\n\nWhen Pack configurations are turned on inside an organization. Pack requests are requests to use a Pack submitted by\nusers in the organization.\n\n### Pages\n\nIndividual pages within a doc offer canvases containing rich text, tables, controls, and other objects.\n\n## Audit events\n\nAudit events contain records of user login/logout activities and other operations performed within a Superhuman Docs organization.\nAudit events are critical to an enterprise's Security Monitoring efforts. It enables Security professionals to proactively\nanalyze the audit events for any suspicious behavior within a Superhuman Docs organization and help them in forensic investigations\nin case of a security breach. Audit events also enable administrators to write their own applications to understand their\nusers' usage of Superhuman Docs.\n\n### Audit event actions\n\nThe following entity types and actions are audited.\n\n| Entity Type | Action Name | Description |\n| ----------- | ----------- | ----------- |\n| agentInstance | AcceptCustomAgentInvitation | Accept an invitation to access a custom agent |\n| agentInstance | AgentScheduleTriggerFired | A scheduled agent trigger fired |\n| agentInstance | CreateAgentInstance | Create a new agent instance |\n| agentInstance | CreateCustomAgentInvitation | Send an invitation to share a custom agent |\n| agentInstance | DeclineCustomAgentInvitation | Decline an invitation to access a custom agent |\n| agentInstance | DeleteAgentInstance | Delete an agent instance |\n| agentInstance | DeleteCustomAgentInvitation | Revoke a pending invitation to a custom agent |\n| agentInstance | StartAgentChat | Start a new agent chat session |\n| agentInstance | UpdateAgentInstance | Update an agent instance |\n| agentInstance | UpdateAgentInstanceSharing | Update sharing permissions on an agent instance |\n| agentToolCall | ApproveAgentToolCall | Approve a tool call during an agent instance session |\n| agentToolCall | ExecuteAgentToolCall | Execute a tool call during an agent instance session |\n| agentToolCall | IgnoreAgentToolCall | Ignore a tool call during an agent instance session |\n| agentToolCall | RejectAgentToolCall | Reject a tool call during an agent instance session |\n| apiToken | DeleteApiToken | Delete an API token |\n| apiToken | GenerateApiToken | Generate an API token |\n| billingAccount | AddBillingGroup | Add a billing group to a billing account |\n| billingAccount | AddBillingGroupAdmin | Assign a billing group admin |\n| billingAccount | DeleteBillingGroup | Delete a billing group from a billing account |\n| billingAccount | RemoveBillingGroupAdmin | Remove a billing group admin |\n| billingAccount | UpdateBillingAccountSettings | Update settings for a billing account |\n| brainQuery | BrainStructuredQuery | Query Coda Brain for structured data |\n| brainQuery | BrainUnstructuredQuery | Query Coda Brain for unstructured data |\n| doc | AddDocPack | Install a Pack within a doc |\n| doc | CopyDoc | Copy a doc to a new location |\n| doc | CopyPages | Copy pages and sub pages within a doc to a new location |\n| doc | CopyTemplate | Copy template to an existing doc |\n| doc | CreateDoc | Create a new doc |\n| doc | DeleteAllReferencingSyncPageTunnels | Delete all sync page tunnels referencing a doc |\n| doc | DeleteDoc | Delete a doc |\n| doc | DeleteDocPack | Remove usage of a Pack from a doc |\n| doc | EditDoc | Edit a doc |\n| doc | ExportDocContent | Export doc content |\n| doc | MoveDoc | Move a doc to a different folder |\n| doc | OpenDoc | Opening a doc for reading, commenting or editing. |\n| doc | ReviveDoc | Revive a deleted doc |\n| doc | SubmitForm | Submit through a form |\n| doc | UpdateDocPermissions | Update sharing permissions on a doc |\n| docPackConnection | CreateExternalConnection | Create a new Pack connection |\n| docPackConnection | DeleteExternalConnection | Delete a Pack connection |\n| docPackConnection | UpdateExternalConnection | Update a Pack connection |\n| folder | CreateFolder | Create a new folder |\n| folder | DeleteFolder | Delete a folder |\n| folder | MoveFolder | Move a folder to a different parent |\n| folder | UpdateFolderMembership | Update membership on a folder |\n| folder | UpdateFolderPermissions | Update sharing permissions on a folder |\n| folder | UpdateFolderSettings | Update folder settings |\n| group | CreateGroup | Create a new group |\n| group | DeleteGroup | Delete a group |\n| group | UpdateGroup | Update group properties |\n| import | CompleteImport | Complete an import |\n| import | FailImport | Fail an import |\n| import | OnboardItem | Onboard a single source item during an import |\n| import | StartImport | Start an import |\n| importPreference | AddImportPreference | Add an import preference for an importer |\n| importPreference | DeleteImportPreference | Delete an import preference for an importer |\n| importPreference | UpdateImportPreference | Update an import preference for an importer |\n| ingestion | CreateIngestion | Create a new Coda Brain ingestion |\n| ingestion | CreateIngestionPermissions | Create Coda Brain ingestion permissions |\n| ingestion | DeleteIngestion | Delete a Coda Brain ingestion |\n| ingestion | DeleteIngestionPermissions | Delete Coda Brain ingestion permissions |\n| ingestion | UpdateIngestion | Update a Coda Brain ingestion |\n| legalHold | CreateLegalHold | Create a new legal hold |\n| legalHold | DeleteLegalHold | Delete a legal hold |\n| legalHold | UpdateLegalHold | Update legal hold |\n| legalHoldExport | CreateLegalHoldExport | Create a new legal hold export |\n| legalHoldExport | DeleteLegalHoldExport | Delete a legal hold export |\n| organization | AddBlockedDomains | Add domains to the blocked domains list |\n| organization | AddTrustedDomains | Add domains to the trusted domains list |\n| organization | ClaimDocOwnership | Claim ownership of a doc after the owner is deactivated |\n| organization | OrganizationPackAccessRequestBlocked | A user attempted to request Pack access while the organization administrator has disabled Pack access requests |\n| organization | OrganizationPackAccessRequested | A user requested access to a Pack |\n| organization | RemoveBlockedDomains | Remove domains from the blocked domains list |\n| organization | RemoveTrustedDomains | Remove domains from the trusted domains list |\n| organization | TransferDocs | Transfer docs from one user to another |\n| organization | UpdateOrganizationSettings | Update organization settings |\n| organization | UpdateOrganizationUserActivation | Update a user's activation status in an organization |\n| organization | UpdateOrganizationUserRole | Add or remove user from organization roles |\n| organization | UpdateWorkspaceAiControls | Update workspace AI controls |\n| pack | AddPackConfigurationPermission | Add a Pack configuration permission |\n| pack | AllowPackAccessRequest | A user was granted access to a Pack |\n| pack | AutoApprovePack | A Pack was auto-approved upon creation per the organization policy |\n| pack | CancelPackReview | Cancel a pending Pack review |\n| pack | CreatePack | Create a new Pack |\n| pack | CreatePackConfiguration | Create a new Pack configuration |\n| pack | CreatePackInvitation | Create a Pack invitation |\n| pack | CreatePackReview | Submit a Pack for Superhuman GO review |\n| pack | DeleteAllConfigurationsOnPack | Delete all configurations for a Pack |\n| pack | DeletePack | Delete a Pack |\n| pack | DeletePackConfiguration | Delete a Pack configuration |\n| pack | DeletePackConfigurationOAuth | Delete OAuth configuration metadata associated with a Pack configuration |\n| pack | DenyPackAccessRequest | A user was denied access to a Pack |\n| pack | RemovePackConfigurationPermission | Delete a Pack configuration permission |\n| pack | SetPackConfigurationOAuth | Set OAuth configuration metadata associated with the Pack configuration |\n| pack | SetPackConfigurationPermissions | Set permissions for a Pack configuration |\n| pack | UpdatePackConfiguration | Update a Pack configuration |\n| pack | UpdatePackListingDraft | Update a Pack listing draft |\n| pack | UpdatePackPermissions | Update Pack permissions |\n| packControl | SetPackControl | Set Pack control for an organization |\n| syncPage | OpenSyncPage | Opening a sync page for reading. |\n| syncPageTunnel | CreateSyncPageTunnel | Create a sync page tunnel |\n| syncPageTunnel | DeleteSyncPageTunnel | Delete a sync page tunnel |\n| syncPageTunnel | UpdateSyncPageTunnel | Update a sync page tunnel |\n| user | CreateUser | Create a new user |\n| user | DeleteUser | Delete an existing user |\n| user | ExportUserData | Export own personal data |\n| user | IssueOAuthToken | Issue an OAuth access/refresh token for a user |\n| user | LogInUser | Login activity of a user |\n| user | LogOutUser | Logout activity of a user |\n| user | RenewOAuthToken | Renew an OAuth access token for a user |\n| user | ResetUserPassword | Reset a user's password |\n| user | RevokeAllOAuthTokens | Revoke all OAuth tokens for a user |\n| user | RevokeOAuthToken | Revoke a single OAuth refresh token for a user |\n| user | UpdateUserAccount | Update a user's account details |\n| user | UpdateUserPassword | Update a user's password |\n| webhook | CreateWebhook | Create a new webhook subscription |\n| webhook | DeleteWebhook | Delete a webhook subscription |\n| webhook | ResetWebhook | Resets a webhook subscription |\n| webhook | UpdateWebhook | Updates parameters for an existing webhook subscription |\n| workspace | CreateCustomIcon | Create a custom icon in a workspace |\n| workspace | CreateWorkspace | Create a new workspace |\n| workspace | DeleteCustomIcon | Delete a custom icon in a workspace |\n| workspace | DeleteWorkspace | Delete a workspace |\n| workspace | ExportWorkspaceMembers | Export workspace members roster |\n| workspace | OffboardWorkspaceUser | Offboard a removed user from a workspace |\n| workspace | PinDocToWorkspace | Pin a doc to a workspace |\n| workspace | ReinstateWorkspaceUser | Allow a user to be re-added to a workspace |\n| workspace | UnpinDocFromWorkspace | Unpin a doc from a workspace |\n| workspace | UpdateWorkspaceSettings | Update workspace settings |\n| workspace | UpdateWorkspaceUserBrainRole | Update a user's Brain role in a workspace |\n| workspace | UpdateWorkspaceUserRole | Update a user's role in a workspace |\n\n### More information\nFor more information about the Superhuman Docs Admin API and these events,\n[detailed information and examples are available](https://docs.superhuman.com/@documentation/admin-audit-api-events-and-documentation).\n\n## Webhooks\n\nWebhooks enable an application to receive notifications of audit events in Superhuman Docs as they occur.\n\nRather than having to \"poll\" repeatedly for new audit events, a webhook will \"push\" events to your internet-accessible\nendpoint via HTTP `POST` requests. This can be much more efficient and convenient for an internet-accessible service.\n\nIt is important to note that webhooks do require a server or server-like endpoint accesible on the internet at all times\nto receive these notifications. For simpler scenarios, it may be easier to just poll for audit events rather than host\nand maintain a server on the internet.\n\n### Webhook Considerations\n\nThis webhook implementation aims to deliver events within a few minutes of occurring under normal operating conditions.\n\nThe system will attempt retries when it detects failures, so it will be possible for you to receive the same events\nmore than once depending on errors or timeouts occurring in your server or in the network infrastructure between Superhuman Docs\nand your server. Once delivered successfully, it is not possible to replay webhook notifications.\n\nTargets are expected to respond within 10 seconds before delivery times out and is considered a failure.\n\nFailures are retried using exponential backoff timing; after 8 hours of consecutive failures, Superhuman Docs will give up and\nplace the webhook into a disabled state.\n\n### Webhook Setup\n\nOnce a new webhook connection is established, an initial handshake will be attempted in order to prove that the target\nis available on the internet and is owned by the registering entity. In addition, any time the webhook is updated\nto point to a new target URL, the handshake procedure will be kicked off.\n\nAfter the initial handshake completes successfully, new audit events will immediately begin to flow to the target.\n\nIn the event that the handshake fails, the `reset` API can be used to force the webhook to retry the handshake process.\n\n### Webhook Handshake details\n\nTo prove that the target URL is available on the internet and is a valid webhook target, a handshake process is\nstarted anytime a new target URL is set on on a webhook. This process is asynchronous to the webhook setup API call.\n\nSuperhuman Docs will send a HTTP `GET` request to the registered target URL with a HTTP header named `X-Webhook-Code`. The\ntarget must respond with a standard `200` or `204` HTTP response code and echo back the same header key and its value.\n\n### Webhook Payload details\n\nOnce the webhook handshake has completed successfully, Superhuman Docs will send batches of audit events to the target URL using\nHTTP `POST` requests.\n\nEach notifications the target receives will include:\n\n* A `X-Webhook-Signature` header which enables the server to verify the payload is genuine and originated from Superhuman Docs.\nThis code is a SHA-256 HMAC of the stringified body of the POST request using the Superhuman Docs-generated secret key available\non the webhook object.\n* A JSON body with key `events` which contains an array of audit events using the same format as\nreturned by the `listEvents` endpoint detailed below.\n\n### Payload verification\n\nSample javascript code fragment for verifying a webhook payload originated from Superhuman Docs:\n\n```javascript\nconst crypto = require('crypto');\n\n// This field is available on the Superhuman Docs webhook object.\nconst signatureKey = 'some value';\n\n// These come from the webhook `POST` request to your server\nconst headers = {'X-Webhook-Signature': 'abc123'};\nconst body = {events: []};\n\nconst calculatedSignature = crypto\n .createHmac('SHA256', signatureKey)\n .update(JSON.stringify(body))\n .digest(\"hex\");\n\nconst isValidSignature = crypto.timingSafeEqual(\n Buffer.from(calculatedSignature),\n Buffer.from(headers['X-Webhook-Signature']),\n);\n```\n\n## List Endpoints\n\nEndpoints supporting listing of resources have the following fields:\n\n - `items`: An array containing the listed resources, limited by the `limit` or `pageToken` query parameters\n - `nextPageLink`: If more results are available, an API link to the next page of results\n - `nextPageToken`: If more results are available, a page token that can be passed into the `pageToken` query parameter\n\n**The maximum page size may change at any time, and may be different for different endpoints.** Please do not rely on it\nfor any behavior of your application. If you pass a `limit` parameter that is larger than our maximum allowed limit,\nwe will only return as many results as our maximum limit. You should look for the presence of the `nextPageToken` on the\nresponse to see if there are more results available, rather than relying on a result set that matches your provided limit.\n\nTo fetch a subsequent page of results, pass the `pageToken` parameter. Set this parameter to the value given to you as the `nextPageToken`\nin a page response. If no value is provided, there are no more results available. You only need to pass the `pageToken` to get\nthe next page of results, you don't need to pass any of the parameters from your original request, as they are all\nimplied by the `pageToken`. Any other parameters provided alongside a `pageToken` will be ignored.\n\n## Rate Limiting\n\nThe Superhuman Docs Admin API sets a reasonable limit on the number of requests that can be made per minute. Once this limit is\nreached, calls to the API will start returning errors with an HTTP status code of 429.\n\n## OpenAPI/Swagger Spec\n\nIn an effort to standardize our API and make it accessible, we offer an OpenAPI 3.0 specification:\n\n- [OpenAPI 3.0 spec - YAML](https://docs.superhuman.com/apis/admin/v1/openapi.yaml)\n- [OpenAPI 3.0 spec - JSON](https://docs.superhuman.com/apis/admin/v1/openapi.json)\n" termsOfService: https://superhuman.com/legal/terms contact: name: Developer Support url: https://superhuman.com/developers email: care@superhuman.com x-logo: url: https://cdn.coda.io/icons/png/color/superhuman-docs-128.png backgroundColor: transparent altText: Superhuman Docs Admin API href: '#' servers: - url: https://docs.superhuman.com/apis/admin/v1 description: Superhuman Docs Admin API (v1) security: - Bearer: [] tags: - name: Events description: 'Provides access to audit events within an organization. ' paths: /organizations/{organizationId}/audit/events: get: summary: List audit events description: 'Returns a list of audit events within an organization. ' operationId: listEvents tags: - Events parameters: - $ref: '#/components/parameters/organizationId' - name: startTime in: query description: Return audit events created on or after the given Unix timestamp. schema: type: integer - name: endTime in: query description: Return audit events created on or before the given Unix timestamp. schema: type: integer - name: action in: query description: Name of the action(s) performed. explode: false schema: type: array items: type: string - name: userId in: query description: The Superhuman Docs ID of the user who initiated the action. schema: type: number - name: email in: query description: The email address(es) of the user(s) who initiated the action. explode: false schema: type: array items: type: string format: email - name: entityType in: query description: Target entity type of the action. schema: $ref: '#/components/schemas/Type' - name: entityId in: query description: Target entity ID of the action. schema: type: string - name: containerWorkspaceId in: query description: ID of the workspace that contained the entity at the time the event was generated. schema: type: string - name: containerFolderId in: query description: ID of the folder that contained the entity at the time the event was generated. schema: type: string - name: containerBillingAccountId in: query description: ID of the billing account that contained the entity at the time the event was generated. schema: type: string - name: order in: query description: Defines the ordering of results. If unspecified, will default to 'asc' (ascending) order from oldest to most recent events. schema: type: string enum: - asc - desc - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/pageToken' responses: '200': description: List of Superhuman Docs audit events matching the query. content: application/json: schema: $ref: '#/components/schemas/EventList' '400': $ref: '#/components/responses/BadRequestError' '401': $ref: '#/components/responses/UnauthorizedError' '403': $ref: '#/components/responses/ForbiddenError' '404': $ref: '#/components/responses/NotFoundError' '429': $ref: '#/components/responses/TooManyRequestsError' x-codeSamples: - label: Python 3.13 lang: python source: "import requests\n\nheaders = {'Authorization': 'Bearer '}\nuri = 'https://docs.superhuman.com/apis/admin/v1/organizations//audit/events'\nparams = {\n 'action': 'docAccessDenied',\n}\nres = requests.get(uri, headers=headers, params=params).json()\n\nprint(f'First event is: {res[\"items\"][0][\"action\"]}')\n# => TODO: add response\n" - label: Shell lang: shell source: "curl -s -H 'Authorization: Bearer ' \\\n 'https://docs.superhuman.com/apis/admin/v1/organizations//audit/events' |\n jq .items[0].action\n# => TODO: add response\n" components: schemas: EntityBrainQuery: x-schema-name: EntityBrainQuery description: Info about the entity or resource being acted upon. type: object required: - type - brainQuery additionalProperties: false properties: type: type: string description: Entity type. enum: - brainQuery brainQuery: $ref: '#/components/schemas/BrainQuery' EntityBillingAccount: x-schema-name: EntityBillingAccount description: Info about the entity or resource being acted upon. type: object required: - type - billingAccount additionalProperties: false properties: type: type: string description: Entity type. enum: - billingAccount billingAccount: $ref: '#/components/schemas/BillingAccount' ImportPreference: x-schema-name: ImportPreference description: An import preference for an external entity. type: object required: - type - id - externalEntity - preferenceType - createdAt - createdBy additionalProperties: false properties: type: type: string description: The type of this resource. enum: - importPreference x-tsType: Type.ImportPreference id: type: string format: uuid description: ID of the import preference. example: afe84ebf-4d06-44c5-b545-a8af5036bebf externalEntity: $ref: '#/components/schemas/ImportExternalEntity' preferenceType: type: string description: How the item should be treated on import. enum: - exempt - owner - location example: owner preferenceDetail: description: 'Settings for owner or location preferences. Omitted for exempt. On create and update, the equivalent fields are sent at the top level of the request body instead. ' oneOf: - type: object required: - ownerEmail additionalProperties: false properties: ownerEmail: type: string format: email maxLength: 512 description: Email of the user who will own imported documents for this item. example: owner@example.com - type: object required: - externalParent additionalProperties: false properties: externalParent: $ref: '#/components/schemas/ImportExternalParent' createdAt: type: string format: date-time description: When the preference was created, in ISO 8601 format. example: '2024-01-15T10:00:00.000Z' createdBy: type: number description: Coda user id that created the preference. example: 12345 updatedAt: type: string format: date-time description: When the preference was last modified, in ISO 8601 format. Omitted if never updated. example: '2024-06-02T08:30:00.000Z' updatedBy: type: number description: Coda user id that last modified the preference. Omitted if never updated. example: 67890 WebhookFilterPredicate: x-schema-name: WebhookFilterPredicate description: One entry in a webhook subscription filter. type: object required: - action additionalProperties: false properties: action: type: string description: The event action. example: EditDoc EntityPack: x-schema-name: EntityPack description: Info about the entity or resource being acted upon. type: object required: - type - pack additionalProperties: false properties: type: type: string description: Entity type. enum: - pack pack: $ref: '#/components/schemas/Pack' EntityWorkspace: x-schema-name: EntityWorkspace description: Info about the entity or resource being acted upon. type: object required: - type - workspace additionalProperties: false properties: type: type: string description: Entity type. enum: - workspace workspace: $ref: '#/components/schemas/Workspace' EntityLegalHold: x-schema-name: EntityLegalHold description: Info about the entity or resource being acted upon. type: object required: - type - legalHold additionalProperties: false properties: type: type: string description: Entity type. enum: - legalHold legalHold: $ref: '#/components/schemas/LegalHold' EntitySyncPage: x-schema-name: EntitySyncPage description: Info about the entity or resource being acted upon. type: object required: - type - syncPage additionalProperties: false properties: type: type: string description: Entity type. enum: - syncPage syncPage: $ref: '#/components/schemas/SyncPage' EntityExternalConnection: x-schema-name: EntityExternalConnection description: Info about the entity or resource being acted upon. type: object required: - type - externalConnection additionalProperties: false properties: type: type: string description: Entity type. enum: - externalConnection externalConnection: $ref: '#/components/schemas/ExternalConnection' WebhookFilter: x-schema-name: WebhookFilter description: Filter set for the webhook subscription. type: object additionalProperties: false properties: or: type: array items: $ref: '#/components/schemas/WebhookFilterPredicate' FolderType: x-schema-name: FolderType type: string enum: - Standard - Personal x-tsEnumNames: - Standard - Personal User: x-schema-name: User description: Info about the user who initiated an action. type: object required: - type - id - email additionalProperties: false properties: type: type: string description: The type of this resource. enum: - user x-tsType: Type.User id: type: number description: Internal Superhuman Docs ID of the user. example: 867102 email: type: string description: Email address of the user. example: user@example.com Type: x-schema-name: Type description: A constant identifying the type of the resource. type: string enum: - agentInstance - agentToolCall - apiToken - billingAccount - brainQuery - doc - docPackConnection - event - externalConnection - folder - group - import - importPreference - ingestion - legalHold - legalHoldExport - organization - pack - packControl - packConfiguration - packConfigurationOauth - packConfigurationPermission - packRequest - page - permission - syncPage - syncPageTunnel - user - webhook - workspace x-tsEnumNames: - AgentInstance - AgentToolCall - ApiToken - BillingAccount - BrainQuery - Doc - DocPackConnection - Event - ExternalConnection - Folder - Group - Import - ImportPreference - Ingestion - LegalHold - LegalHoldExport - Organization - Pack - PackControl - PackConfiguration - PackConfigurationOauth - PackConfigurationPermission - PackRequest - Page - Permission - SyncPage - SyncPageTunnel - User - Webhook - Workspace LegalHoldExportState: x-schema-name: LegalHoldState type: string enum: - generating - ready - error x-tsEnumNames: - Generating - Ready - Error EntityAgentInstance: x-schema-name: EntityAgentInstance description: Info about the entity or resource being acted upon. type: object required: - type - agentInstance additionalProperties: false properties: type: type: string description: Entity type. enum: - agentInstance agentInstance: $ref: '#/components/schemas/AgentInstance' MinPermissionCount: x-schema-name: MinPermissionCount description: Minimum count of permissions. type: object required: - type - minCount additionalProperties: false properties: type: type: string description: The type of this resource. enum: - minCount x-tsType: PermissionCountType.MinCount minCount: type: number description: Minimum count of permissions. EntityFolder: x-schema-name: EntityFolder description: Info about the entity or resource being acted upon. type: object required: - type - folder additionalProperties: false properties: type: type: string description: Entity type. enum: - folder folder: $ref: '#/components/schemas/Folder' ExactPermissionCount: x-schema-name: ExactPermissionCount description: Exact count of permissions. type: object required: - type - exactCount additionalProperties: false properties: type: type: string description: The type of this resource. enum: - exactCount x-tsType: PermissionCountType.ExactCount exactCount: type: number description: Exact count of permissions. EntityIngestion: x-schema-name: EntityIngestion description: Info about the entity or resource being acted upon. type: object required: - type - ingestion additionalProperties: false properties: type: type: string description: Entity type. enum: - ingestion ingestion: $ref: '#/components/schemas/Ingestion' EntityImportPreference: x-schema-name: EntityImportPreference description: Info about the entity or resource being acted upon. type: object required: - type - importPreference additionalProperties: false properties: type: type: string description: Entity type. enum: - importPreference importPreference: $ref: '#/components/schemas/ImportPreference' Webhook: x-schema-name: Webhook description: Info about a webhook subscription. type: object additionalProperties: false required: - type - id - resource - target - createdAt - state properties: type: type: string description: The type of this resource. enum: - webhook x-tsType: Type.Webhook id: type: string description: ID of the Superhuman Docs webhook subscription. example: f88ba9d9-037d-41df-a49c-49798701ed41 name: type: string description: Name of the webhook subscription. example: My webhook signatureKey: type: string description: 'Key used to generate HMAC payload signatures; should be used to verify the signature of incoming webhook notifications. ' resource: $ref: '#/components/schemas/WebhookWatchedResource' target: type: string format: url description: The target URL where webhook payloads will be sent example: https://example.com/webhook/endpoint filters: $ref: '#/components/schemas/WebhookFilter' createdAt: type: string format: date-time description: Timestamp for when the webhook subscription was created. example: '2018-04-11T00:18:57.946Z' state: type: string description: The current state of the webhook subscription. example: Active lastFailureAt: type: string format: date-time description: Timestamp for when the webhook last received an error while attempting to send a payload to the target. example: '2018-04-11T00:18:57.946Z' lastFailureContent: type: string description: Last error reported by the target. example: 500 Server Error lastSuccessAt: type: string format: date-time description: Timestamp for when the webhook last successfully sent a payload to the target. example: '2018-04-11T00:18:57.946Z' EntityWebhook: x-schema-name: EntityWebhook description: Info about the entity or resource being acted upon. type: object required: - type - webhook additionalProperties: false properties: type: type: string description: Entity type. enum: - webhook webhook: $ref: '#/components/schemas/Webhook' EntityPermission: x-schema-name: EntityPermission description: Info about the entity or resource being acted upon. type: object required: - type - permission additionalProperties: false properties: type: type: string description: Entity type. enum: - permission permission: $ref: '#/components/schemas/Permission' Folder: x-schema-name: Folder description: Info about a Superhuman Docs folder. type: object required: - type - id - name - folderType additionalProperties: false properties: type: type: string description: The type of this resource. enum: - folder x-tsType: Type.Folder id: type: string description: ID of the Superhuman Docs folder. example: fl-1Ab234 name: type: string description: Name of the Superhuman Docs folder. example: My docs icon: type: string description: Name of the Superhuman Docs folder icon. example: exclamation-circle-filled description: type: string description: Description of the Superhuman Docs folder. example: This folder holds my important docs. folderType: $ref: '#/components/schemas/FolderType' isPrivate: deprecated: true type: boolean description: Deprecated, use folder permissions instead. acl: type: array items: $ref: '#/components/schemas/FolderPermission' truncatedAcl: type: boolean description: True if the inline ACL field was truncated; use a paginated ACL query to fetch all permissions. Entity: x-schema-name: Entity description: Info about the entity or resource being acted upon. type: object required: - type properties: type: type: string description: Entity type. enum: - agentInstance - apiToken - billingAccount - brainQuery - doc - docPackConnection - externalConnection - folder - group - import - importPreference - ingestion - legalHold - legalHoldExport - organization - pack - page - permission - syncPage - syncPageTunnel - agentToolCall - user - webhook - workspace additionalProperties: false oneOf: - $ref: '#/components/schemas/EntityAgentInstance' - $ref: '#/components/schemas/EntityApiToken' - $ref: '#/components/schemas/EntityBillingAccount' - $ref: '#/components/schemas/EntityBrainQuery' - $ref: '#/components/schemas/EntityDoc' - $ref: '#/components/schemas/EntityDocPackConnection' - $ref: '#/components/schemas/EntityExternalConnection' - $ref: '#/components/schemas/EntityFolder' - $ref: '#/components/schemas/EntityGroup' - $ref: '#/components/schemas/EntityImport' - $ref: '#/components/schemas/EntityImportPreference' - $ref: '#/components/schemas/EntityIngestion' - $ref: '#/components/schemas/EntityLegalHold' - $ref: '#/components/schemas/EntityLegalHoldExport' - $ref: '#/components/schemas/EntityOrganization' - $ref: '#/components/schemas/EntityPack' - $ref: '#/components/schemas/EntityPage' - $ref: '#/components/schemas/EntityPermission' - $ref: '#/components/schemas/EntitySyncPage' - $ref: '#/components/schemas/EntitySyncPageTunnel' - $ref: '#/components/schemas/EntityAgentToolCall' - $ref: '#/components/schemas/EntityUser' - $ref: '#/components/schemas/EntityWebhook' - $ref: '#/components/schemas/EntityWorkspace' discriminator: propertyName: type LegalHoldExport: x-schema-name: LegalHoldExport description: Info about a legal hold export type: object required: - type - id - name - creator - creatorName - exportAt - format - state - createdAt - updatedAt additionalProperties: false properties: type: type: string description: The type of this resource. enum: - legalHoldExport x-tsType: Type.LegalHoldExport id: type: string format: uuid description: ID of the legal hold export. example: 0d470e5b-d145-4440-a897-df57f4d72dfb name: type: string description: Name of the export. example: Export of docs for investigation matter 123 creator: type: string format: email description: Email address of the legal hold export creator example: april@example.com creatorName: type: string description: Name of the legal hold export creator example: April Jane exportAt: type: string format: date-time description: Docs are exported in the state corresponding to this timestamp example: '2024-01-08T00:00:00.000Z' format: $ref: '#/components/schemas/LegalHoldExportFormat' docCount: type: number description: Count of docs included in the export example: 143 state: $ref: '#/components/schemas/LegalHoldExportState' createdAt: type: string format: date-time description: Timestamp for when the legal hold export was created. example: '2024-04-13T00:18:57.946Z' updatedAt: type: string format: date-time description: Timestamp for when the legal hold export was last modified. example: '2024-04-13T00:18:57.946Z' downloadUrl: type: string format: url description: URL to download the exported doc package once the export is complete downloadSize: type: number description: Size of the exported doc package in bytes error: type: string description: Error message if the export failed Ingestion: x-schema-name: Ingestion description: Info about a Coda Brain ingestion. type: object required: - type - id additionalProperties: false properties: type: type: string description: The type of this resource. enum: - ingestion x-tsType: Type.Ingestion id: type: string description: ID of the ingestion. example: 928329ce-186f-419b-9bca-211a8d06689b name: type: string description: Name of the ingestion. example: My Google Drive Connection WebhookWatchedResource: x-schema-name: WebhookWatchedResource description: Type of resource a webhook is subscribed to. type: string enum: - auditEvents x-tsEnumNames: - AuditEvents ExternalConnection: x-schema-name: ExternalConnection description: Info about an external Pack connection. type: object additionalProperties: false required: - type - id properties: type: type: string description: The type of this resource. enum: - externalConnection x-tsType: Type.ExternalConnection id: type: string description: ID of the external connection. name: type: string description: Name of the external connection. GroupPrincipal: type: object required: - groupId - groupName - type additionalProperties: false properties: type: type: string description: The type of this principal. enum: - group x-tsType: PrincipalType.Group groupId: type: string description: Group ID for the principal. example: grp-6SM9xrKcqW groupName: type: string description: Name of the group. example: Marketing team DocPackConnectionReadAccess: x-schema-name: DocPackConnectionReadAccess description: Who in the doc has access to read data using the connection. type: string enum: - Anyone - None x-tsEnumNames: - Anyone - None EntityUser: x-schema-name: EntityUser description: Info about the entity or resource being acted upon. type: object required: - type - user additionalProperties: false properties: type: type: string description: Entity type. enum: - user user: $ref: '#/components/schemas/User' Group: x-schema-name: Group description: Info about a group. type: object required: - type - id - name additionalProperties: false properties: type: type: string description: The type of this resource. enum: - group x-tsType: Type.Group id: type: string description: ID of the group. example: grp-6SM9xrKcqW name: type: string description: Name of the group. example: Engineering description: type: string description: Description of the group. example: All engineers. Permission: x-schema-name: Permission description: A specific permission granted to a principal. type: object required: - type - principal - id - access additionalProperties: false properties: type: type: string description: The type of this resource. enum: - permission x-tsType: Type.Permission principal: $ref: '#/components/schemas/Principal' id: type: string description: ID for the Permission access: $ref: '#/components/schemas/AccessType' DocSearchHit: x-schema-name: DocSearchHit description: Details on where the search query appeared in the doc. type: object required: - matchText - browserLink additionalProperties: false properties: matchText: type: string description: Snippet of text from the doc showing context for the search match. example: 'Objective: Key Results: * Reach feature parity with previous version ' browserLink: type: string format: url description: Browser-friendly link to the location in the document where the search term appears. example: https://docs.superhuman.com/d/_dAbCDeFGH SyncPage: x-schema-name: SyncPage description: Information about a sync page type: object required: - id - access - docId - sourceDocId additionalProperties: false properties: docId: type: string description: Document ID that contains the sync page sourceDocId: type: string description: Document ID of the document embedded as a sync page sourcePageId: type: string description: Page ID that is embedded as a sync page includeSubpages: type: boolean description: Include subpages in the sync page. AgentInstance: x-schema-name: AgentInstance description: Info about an agent instance. type: object required: - type additionalProperties: false properties: type: type: string description: The type of this resource. enum: - agentInstance x-tsType: Type.AgentInstance id: type: string description: ID of the agent instance. example: 928329ce-186f-419b-9bca-211a8d06689b FolderPermission: x-schema-name: FolderPermission description: A specific folder permission granted to a principal. type: object required: - type - principal - id - access additionalProperties: false properties: type: type: string description: The type of this resource. enum: - permission x-tsType: Type.Permission principal: $ref: '#/components/schemas/Principal' id: type: string description: ID for the Permission access: $ref: '#/components/schemas/FolderAccessType' LegalHold: x-schema-name: LegalHold description: Info about a legal hold. type: object required: - type - id - name - creator - creatorName - rangeStart - userCount - state - createdAt - updatedAt additionalProperties: false properties: type: type: string description: The type of this resource. enum: - legalHold x-tsType: Type.LegalHold id: type: string format: uuid description: ID of the legal hold. example: 0d470e5b-d145-4440-a897-df57f4d72dfb name: type: string description: Name of the hold. example: Investigation Matter 123 description: type: string description: Description of the hold. example: Holding docs for legal matter 123 creator: type: string format: email description: Email address of the legal hold creator example: april@example.com creatorName: type: string description: Name of the legal hold creator example: April Jane rangeStart: type: string format: date-time description: Timestamp of the beginning of the hold range example: '2024-01-08T00:00:00.000Z' rangeEnd: type: string format: date-time description: Timestamp of the end of the hold range example: '2024-04-11T00:00:00.000Z' docCount: type: number description: Count of docs included in the hold, after indexing has stabilized example: 143 userCount: type: number description: Count of users included in the hold example: 12 state: $ref: '#/components/schemas/LegalHoldState' createdAt: type: string format: date-time description: Timestamp for when the legal hold was created. example: '2024-04-13T00:18:57.946Z' updatedAt: type: string format: date-time description: Timestamp for when the legal hold was last modified. example: '2024-04-13T00:18:57.946Z' Pack: x-schema-name: Pack description: Info about a Pack. type: object required: - type - id - name properties: type: type: string description: The type of this resource. enum: - pack x-tsType: Type.Pack id: type: number description: ID of the Pack. example: 1003 name: type: string description: The name of the Pack. example: Cool Geometry Formulas DocPackConnection: x-schema-name: DocPackConnection description: Metadata for a Packs connection linked to a doc. type: object required: - type - doc - connectionId - pack - owner - workspace - description - readAccess - writeAccess additionalProperties: false properties: type: type: string description: The type of this resource. enum: - docPackConnection x-tsType: Type.DocPackConnection doc: $ref: '#/components/schemas/Doc' connectionId: type: string description: ID of the connection linked to this doc. example: 88648447-d2c3-4bdb-b476-2150596da2e4 pack: $ref: '#/components/schemas/Pack' owner: $ref: '#/components/schemas/User' workspace: $ref: '#/components/schemas/Workspace' description: type: string description: Description of the Pack connection. example: hello@example.com (2) readAccess: $ref: '#/components/schemas/DocPackConnectionReadAccess' writeAccess: $ref: '#/components/schemas/DocPackConnectionWriteAccess' ImportExternalEntity: x-schema-name: ImportExternalEntity type: object description: External item this preference applies to. required: - id - type additionalProperties: false properties: id: type: string maxLength: 128 description: 'ID of the item in the source system. For Quip, this is the `secret_path` from the Quip API. ' example: thread-def456 type: type: string maxLength: 32 description: 'Type of the item in the source system. Allowed values depend on the importer; for Quip this must be either `thread` or `folder`. ' example: thread EntitySyncPageTunnel: x-schema-name: EntitySyncPageTunnel description: Info about the entity or resource being acted upon. type: object required: - type - syncPageTunnel additionalProperties: false properties: type: type: string description: Entity type. enum: - syncPageTunnel syncPageTunnel: $ref: '#/components/schemas/SyncPageTunnel' Import: x-schema-name: Import description: Info about an import operation. type: object required: - type - id additionalProperties: false properties: type: type: string description: The type of this resource. enum: - import x-tsType: Type.Import id: type: string description: ID of the import operation. example: import-1AbcdeFgh1 UserContext: x-schema-name: UserContext description: Additional context about how the user who initiated an action. type: object required: - source additionalProperties: false oneOf: - type: object required: - source - sessionId - browser additionalProperties: false properties: source: type: string description: The originating source of this user's action. enum: - browser sessionId: type: string description: If available, the user session ID. example: as-zxfl5qXkN2 browser: type: object description: User context for an action triggered from a browser. required: - ua - ipAddress additionalProperties: false properties: ua: type: string description: User agent string example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 ipAddress: type: string description: If available, the user IP address. example: 192.0.2.0 - type: object required: - source - codaApi additionalProperties: false properties: source: type: string description: The originating source of this user's action. enum: - codaApi codaApi: type: object description: User context for an action triggered from the Superhuman Docs API. required: - tokenName - ua - ipAddress additionalProperties: false properties: tokenName: type: string description: API Token Name example: Cool Superhuman Docs Integration tokenId: type: string format: uuid description: API Token ID example: 9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d ua: type: string description: User agent string example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 ipAddress: type: string description: If available, the user IP address. example: 192.0.2.0 - type: object required: - source - scim additionalProperties: false properties: source: type: string description: The originating source of this user's action. enum: - scim scim: type: object description: Context for an action triggered via SCIM. required: - ua - ipAddress additionalProperties: false properties: ua: type: string description: User agent string example: Okta SCIM Client 1.0.0 ipAddress: type: string description: The IP address of the IdP or entity invoking the SCIM API. example: 192.0.2.0 - type: object required: - source - slack additionalProperties: false properties: source: type: string description: The originating source of this user's action. enum: - slack slack: type: object description: User context for an action triggered from Slack. additionalProperties: false properties: slackUserId: type: string description: Slack User ID example: UA8RXUSPL slackUserName: type: string description: Slack User Name example: johndoe slackTeamId: type: string description: Slack Team ID example: T9TK3CUKW - type: object required: - source - system additionalProperties: false properties: source: type: string description: The originating source of this user's action. enum: - system system: type: object description: Context for an action triggered by a backend system within Superhuman Docs required: - process additionalProperties: false properties: process: type: string description: Name of the system process that generated the change example: Some Backend Process - type: object required: - source - codaMcp additionalProperties: false properties: source: type: string description: The originating source of this user's action. enum: - codaMcp codaMcp: type: object description: User context for an action triggered from the Superhuman Docs API. required: - ua - ipAddress additionalProperties: false properties: ua: type: string description: User agent string example: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 ipAddress: type: string description: If available, the user IP address. example: 192.0.2.0 ImportExternalParent: x-schema-name: ImportExternalParent type: object description: Destination in the source system. required: - id - type additionalProperties: false properties: id: type: string maxLength: 128 description: 'ID of the parent in the source system. For Quip, this is the folder''s `secret_path` from the Quip API. ' example: folder-xyz789 type: type: string description: Parent container type. enum: - folder example: folder Event: x-schema-name: Event description: Info about the event. type: object required: - timestamp - user - userContext - action - entity - result - organizationId - eventId additionalProperties: false properties: timestamp: type: integer description: Unix timestamp of when this audit event was created. example: 1614175261 user: $ref: '#/components/schemas/User' userContext: $ref: '#/components/schemas/UserContext' action: type: string description: Name of the action attempted. example: docAccessDenied entity: $ref: '#/components/schemas/Entity' eventDetails: type: object description: Additional details for this event. result: type: string description: Result of the attempted action. example: Success organizationId: type: string description: ID of the Superhuman Docs organization. example: org-1AbcdeFgh1 eventId: type: string description: ID of the event. example: c4515dc3-cb8d-4a57-9346-d37953f0a628 Page: x-schema-name: Page description: Info about a page. type: object required: - type - id - name - href - browserLink additionalProperties: false properties: type: type: string description: The type of this resource. enum: - page x-tsType: Type.Page id: type: string description: ID of the page. example: canvas-IjkLmnO href: type: string format: url description: API link to the page. example: https://docs.superhuman.com/apis/admin/v1/organizations//docs//pages/ browserLink: type: string format: url description: Browser-friendly link to the page. example: https://docs.superhuman.com/d/_dAbCDeFGH/Launch-Status_sumnO name: type: string description: Name of the page. example: Launch Status subtitle: type: string description: Subtitle of the page. example: See the status of launch-related tasks. parent: $ref: '#/components/schemas/PageReference' AccessType: x-schema-name: AccessType description: Type of access. type: string enum: - readonly - write - comment - none x-tsEnumNames: - ReadOnly - Write - Comment - None DocPackConnectionWriteAccess: x-schema-name: DocPackConnectionWriteAccess description: Who in the doc has access to perform actions using the connection. type: string enum: - Anyone - Self - None x-tsEnumNames: - Anyone - Self - None Principal: x-schema-name: Principal description: Metadata about a principal. oneOf: - $ref: '#/components/schemas/EmailPrincipal' - $ref: '#/components/schemas/GroupPrincipal' - $ref: '#/components/schemas/DomainPrincipal' - $ref: '#/components/schemas/WorkspacePrincipal' - $ref: '#/components/schemas/AnyonePrincipal' discriminator: propertyName: type mapping: email: '#/components/schemas/EmailPrincipal' group: '#/components/schemas/GroupPrincipal' domain: '#/components/schemas/DomainPrincipal' workspace: '#/components/schemas/WorkspacePrincipal' anyone: '#/components/schemas/AnyonePrincipal' NextPageToken: description: If specified, an opaque token used to fetch the next page of results. type: string example: eyJsaW1pd EventList: x-schema-name: EventList type: object required: - items additionalProperties: false properties: items: type: array items: $ref: '#/components/schemas/Event' href: type: string format: url description: API link to these results example: https://docs.superhuman.com/apis/admin/v1/organizations/org-1AbcdeFgh1/audit/events?limit=20 nextPageToken: $ref: '#/components/schemas/NextPageToken' nextPageLink: allOf: - $ref: '#/components/schemas/NextPageLink' - type: string example: https://docs.superhuman.com/apis/admin/v1/organizations/org-1AbcdeFgh1/audit/events?pageToken=eyJsaW1pd FolderAccessType: x-schema-name: FolderAccessType description: Type of access for folders only. type: string enum: - readonly - write - comment - manage - none x-tsEnumNames: - ReadOnly - Write - Comment - Manage - None Workspace: x-schema-name: Workspace description: Info about a Superhuman Docs workspace. type: object required: - type - id - name properties: type: type: string description: The type of this resource. enum: - workspace x-tsType: Type.Workspace id: type: string description: ID of the Superhuman Docs workspace. example: ws-1Ab234 name: type: string description: Name of the workspace. example: example.com featureSet: $ref: '#/components/schemas/FeatureSet' autoJoinDomains: type: array items: type: string format: domain description: When enabled for the org new users matching the specified auto-join domains will get added as workspace members. example: - example.com truncatedAutoJoinDomains: type: boolean description: Whether the auto-join domains list is truncated; if true use a paginated query to fetch all domains. example: false numDocMakerAdmins: type: integer description: Number of Doc Maker Admins in the workspace. example: 3 numDocMakers: type: integer description: Number of Doc Makers in the workspace. example: 13 numEditors: type: integer description: Number of Editors in the workspace. example: 5 LegalHoldExportFormat: x-schema-name: LegalHoldExportFormat type: string enum: - pdfzip x-tsEnumNames: - PdfZip Organization: x-schema-name: Organization description: Info about a Superhuman Docs organization. type: object required: - type - id - name properties: type: type: string description: The type of this resource. enum: - organization x-tsType: Type.Organization id: type: string description: ID of the Superhuman Docs organization. example: org-1AbcdeFgh1 name: type: string description: Name of the organization. example: Superhuman Docs LegalHoldState: x-schema-name: LegalHoldState type: string enum: - indexing - active x-tsEnumNames: - Indexing - Active EntityLegalHoldExport: x-schema-name: EntityLegalHoldExport description: Info about the entity or resource being acted upon. type: object required: - type - legalHoldExport additionalProperties: false properties: type: type: string description: Entity type. enum: - legalHoldExport legalHoldExport: $ref: '#/components/schemas/LegalHoldExport' Doc: x-schema-name: Doc description: Info about a document. type: object required: - type - docType - id - name - href - browserLink - folderId - workspaceId properties: type: type: string description: The type of this resource. enum: - doc x-tsType: Type.Doc docType: $ref: '#/components/schemas/DocType' id: type: string description: ID of the document. example: AbCDeFGH name: type: string description: Name of the doc. example: Product Launch Hub icon: type: string description: Name of the icon. example: exclamation-circle-filled keyAccessRevoked: type: boolean description: True when this doc's encryption key can't be unwrapped (revoked or missing), so its name can't be decrypted. example: false href: type: string format: url description: API link to the document. example: https://docs.superhuman.com/apis/admin/v1/docs/AbCDeFGH browserLink: type: string format: url description: Browser-friendly link to the document. example: https://docs.superhuman.com/d/_dAbCDeFGH folderId: type: string description: ID of the document's folder. example: fl-es129308 workspaceId: type: string description: ID of the document's workspace. example: ws-sdfmsdf9 owner: type: string format: email description: Email address of the doc owner example: april@example.com ownerName: type: string description: Name of the doc owner example: April Jane createdAt: type: string format: date-time description: Timestamp for when the doc was created. example: '2018-04-11T00:18:57.946Z' updatedAt: type: string format: date-time description: Timestamp for when the doc was last modified. example: '2018-04-11T00:18:57.946Z' acl: type: array items: $ref: '#/components/schemas/Permission' truncatedAcl: type: boolean description: True if the inline ACL field was truncated; use a paginated ACL query to fetch all permissions. aclSummary: $ref: '#/components/schemas/PermissionsSummary' searchHit: $ref: '#/components/schemas/DocSearchHit' docUsersLast90Days: deprecated: true type: number description: Deprecated, use documentAnalytics instead. example: 42 isDeleted: type: boolean description: True if the doc has been deleted. example: false installedPackCount: type: number description: Number of Packs installed in the doc. example: 3 discoverableViaWeb: type: boolean description: True if the doc is published and discoverable via the web. example: true documentAnalytics: $ref: '#/components/schemas/DocumentAnalytics' EntityApiToken: x-schema-name: EntityApiToken description: Info about the entity or resource being acted upon. type: object required: - type - apiToken additionalProperties: false properties: type: type: string description: Entity type. enum: - apiToken apiToken: $ref: '#/components/schemas/ApiToken' PermissionCount: x-schema-name: PermissionCount description: Count of permissions. oneOf: - $ref: '#/components/schemas/ExactPermissionCount' - $ref: '#/components/schemas/MinPermissionCount' discriminator: propertyName: type mapping: exactCount: '#/components/schemas/ExactPermissionCount' minCount: '#/components/schemas/MinPermissionCount' AgentToolCall: x-schema-name: AgentToolCall description: An agent tool call audit record. type: object required: - toolCallId - toolName additionalProperties: false properties: toolCallId: type: string description: Unique identifier for the tool call. toolName: type: string description: The name of the tool that was called. DomainPrincipal: type: object required: - domain - type additionalProperties: false properties: type: type: string description: The type of this principal. enum: - domain x-tsType: PrincipalType.Domain domain: type: string description: Domain for the principal. example: domain.com DocType: x-schema-name: DocType type: string enum: - doc - form - template x-tsEnumNames: - Doc - Form - Template BillingAccount: x-schema-name: BillingAccount description: Info about a Superhuman Docs billing account. type: object required: - type - id - name properties: type: type: string description: The type of this resource. enum: - billingAccount x-tsType: Type.BillingAccount id: type: string description: ID of the Superhuman Docs billing account. example: ba-1Ab234 PageReference: x-schema-name: PageReference description: Reference to a page. type: object required: - type - id - name - href - browserLink additionalProperties: false properties: type: type: string description: The type of this resource. enum: - page x-tsType: Type.Page id: type: string description: ID of the page. example: canvas-IjkLmnO href: type: string format: url description: API link to the page. example: https://docs.superhuman.com/apis/admin/v1/organizations//docs//pages/ browserLink: type: string format: url description: Browser-friendly link to the page. example: https://docs.superhuman.com/d/_dAbCDeFGH/Launch-Status_sumnO name: type: string description: Name of the page. example: Launch Status EmailPrincipal: type: object required: - email - type additionalProperties: false properties: type: type: string description: The type of this principal. enum: - email x-tsType: PrincipalType.Email email: type: string description: Email for the principal. example: example@domain.com EntityPage: x-schema-name: EntityPage description: Info about the entity or resource being acted upon. type: object required: - type - page additionalProperties: false properties: type: type: string description: Entity type. enum: - page page: $ref: '#/components/schemas/Page' EntityOrganization: x-schema-name: EntityOrganization description: Info about the entity or resource being acted upon. type: object required: - type - organization additionalProperties: false properties: type: type: string description: Entity type. enum: - organization organization: $ref: '#/components/schemas/Organization' PermissionsSummary: x-schema-name: PermissionsSummary description: Summary of permissions. type: object required: - worldwideAccess - domainShares - workspaceShares - numGroupPermissions - numUserPermissions additionalProperties: false properties: worldwideAccess: $ref: '#/components/schemas/AccessType' domainShares: type: array items: type: string description: List of domains that have access workspaceShares: type: array items: type: string description: List of workspaces that have access numGroupPermissions: $ref: '#/components/schemas/PermissionCount' numUserPermissions: $ref: '#/components/schemas/PermissionCount' AnyonePrincipal: type: object required: - type additionalProperties: false properties: type: type: string description: The type of this principal. enum: - anyone x-tsType: PrincipalType.Anyone FeatureSet: x-schema-name: FeatureSet deprecated: true description: Pricing plan associated with a workspace. type: string enum: - Free - Pro - Team - Enterprise x-tsEnumNames: - Free - Pro - Team - Enterprise EntityGroup: x-schema-name: EntityGroup description: Info about the entity or resource being acted upon. type: object required: - type - group additionalProperties: false properties: type: type: string description: Entity type. enum: - group group: $ref: '#/components/schemas/Group' EntityDoc: x-schema-name: EntityDoc description: Info about the entity or resource being acted upon. type: object required: - type - doc additionalProperties: false properties: type: type: string description: Entity type. enum: - doc doc: $ref: '#/components/schemas/Doc' WorkspacePrincipal: type: object required: - type - workspaceId additionalProperties: false properties: type: type: string description: The type of this principal. enum: - workspace x-tsType: PrincipalType.Workspace workspaceId: type: string description: WorkspaceId for the principal. example: ws-sdfmsdf9 EntityAgentToolCall: x-schema-name: EntityAgentToolCall description: Info about the entity or resource being acted upon. type: object required: - type - agentToolCall additionalProperties: false properties: type: type: string description: Entity type. enum: - agentToolCall agentToolCall: $ref: '#/components/schemas/AgentToolCall' ApiToken: x-schema-name: ApiToken description: Info about an API Token. type: object required: - type - id - name properties: type: type: string description: The type of this resource. enum: - apiToken x-tsType: Type.ApiToken id: type: string description: ID of the Superhuman Docs API Token. example: AbCDeFGH name: type: string description: Name of the Superhuman Docs API Token. example: Cool Superhuman Docs Integration EntityDocPackConnection: x-schema-name: EntityDocPackConnection description: Info about the entity or resource being acted upon. type: object required: - type - docPackConnection additionalProperties: false properties: type: type: string description: Entity type. enum: - docPackConnection docPackConnection: $ref: '#/components/schemas/DocPackConnection' EntityImport: x-schema-name: EntityImport description: Info about the entity or resource being acted upon. type: object required: - type - import additionalProperties: false properties: type: type: string description: Entity type. enum: - import import: $ref: '#/components/schemas/Import' SyncPageTunnel: x-schema-name: SyncPageTunnel description: Information about a sync page tunnel type: object required: - id - access - docId - sourceDocId - modificationUserId additionalProperties: false properties: id: type: string description: ID for the sync page tunnel access: $ref: '#/components/schemas/AccessType' docId: type: string description: Document ID that contains the sync page sourceDocId: type: string description: Document ID of the document embedded as a sync page modificationUserId: type: number description: ID of the user who last modified the sync page tunnel NextPageLink: description: If specified, a link that can be used to fetch the next page of results. type: string format: url DocumentAnalytics: x-schema-name: DocumentAnalytics description: Metrics for a doc. type: object required: - numPages - numPageViewsLast90Days - numCollaboratorsLast90Days additionalProperties: false properties: lastActiveDate: type: string format: date-time description: Timestamp for when the doc was last accessed. example: '2018-04-11T00:18:57.946Z' numPages: type: number description: Number of pages in the doc. example: 3 numPageViewsLast90Days: type: number description: Number of page views in the last 90 days. example: 42 numCollaboratorsLast90Days: type: number description: Number of unique users that have viewed the doc in the last 90 days. example: 42 externallySharedUserDomains: type: array items: type: string format: email description: Domains of users external to the organization this doc is shared with. example: - gmail.com - outlook.com BrainQuery: x-schema-name: BrainQuery description: Info about a Coda Brain query. type: object required: - type additionalProperties: false properties: type: type: string description: The type of this resource. enum: - brainQuery x-tsType: Type.BrainQuery responses: NotFoundError: description: The resource could not be located with the current API token. content: application/json: schema: description: An HTTP error resulting from an unsuccessful request. required: - statusCode - statusMessage - message additionalProperties: false properties: statusCode: type: number description: HTTP status code of the error. example: 404 statusMessage: type: string description: HTTP status message of the error. example: Not Found message: type: string description: Any additional context on the error, or the same as `statusMessage` otherwise. example: Not Found BadRequestError: description: The request parameters did not conform to expectations. content: application/json: schema: description: An HTTP error resulting from an unsuccessful request. required: - statusCode - statusMessage - message additionalProperties: false properties: statusCode: type: number description: HTTP status code of the error. example: 400 statusMessage: type: string description: HTTP status message of the error. example: Bad Request message: type: string description: Any additional context on the error, or the same as `statusMessage` otherwise. example: Bad Request TooManyRequestsError: description: The client has sent too many requests. content: application/json: schema: description: An HTTP error resulting from an unsuccessful request. required: - statusCode - statusMessage - message additionalProperties: false properties: statusCode: type: number description: HTTP status code of the error. example: 429 statusMessage: type: string description: HTTP status message of the error. example: Too Many Requests message: type: string description: Any additional context on the error, or the same as `statusMessage` otherwise. example: Too Many Requests UnauthorizedError: description: The API token is invalid or has expired. content: application/json: schema: description: An HTTP error resulting from an unsuccessful request. required: - statusCode - statusMessage - message additionalProperties: false properties: statusCode: type: number description: HTTP status code of the error. example: 401 statusMessage: type: string description: HTTP status message of the error. example: Unauthorized message: type: string description: Any additional context on the error, or the same as `statusMessage` otherwise. example: Unauthorized ForbiddenError: description: The API token does not grant access to this resource. content: application/json: schema: description: An HTTP error resulting from an unsuccessful request. required: - statusCode - statusMessage - message additionalProperties: false properties: statusCode: type: number description: HTTP status code of the error. example: 403 statusMessage: type: string description: HTTP status message of the error. example: Forbidden message: type: string description: Any additional context on the error, or the same as `statusMessage` otherwise. example: Forbidden parameters: organizationId: name: organizationId description: ID of the organization. in: path required: true example: org-AbCDeFGHIj schema: type: string limit: name: limit description: Maximum number of results to return in this query. in: query example: 10 schema: type: integer minimum: 1 default: 100 maximum: 500 pageToken: name: pageToken description: An opaque token used to fetch the next page of results. in: query example: eyJsaW1pd schema: type: string securitySchemes: Bearer: description: 'The Superhuman Docs Admin API can be accessed using an API token, which can be obtained from [*My account*](https://docs.superhuman.com/account) in Superhuman Docs. This token should be specified by setting a header as follows. ```Authorization: Bearer ``` Keep your token safe, as anyone who gets access to it can access your account. Once a token is created it cannot be viewed or modified, so don''t lose it. ' type: http scheme: bearer bearerFormat: UUID x-tagGroups: - name: API Tokens tags: - API Tokens - name: Docs tags: - Docs - Doc Permissions - Doc Export - name: Doc Structure tags: - Pages - name: Events tags: - Events - name: Folders tags: - Folders - Folder Permissions - name: Groups tags: - Groups - name: Import tags: - Preferences - name: LegalHolds tags: - LegalHolds - name: Organizations tags: - Organizations - Organization Users - Pack Controls - Pack Configurations - name: Packs tags: - Packs - name: Webhooks tags: - Webhooks - name: Workspaces tags: - Workspaces - Workspace Users