# Assembly ## Docs - [2FA enforcement](https://studio.assembly.com/docs/advanced-features/2fa-enforcement.md): Enforce 2FA for internal users and clients. - [Audit log](https://studio.assembly.com/docs/advanced-features/audit-log.md): Track actions taken across your workspace, including sign-ins, file activity, billing changes, and contract signatures. - [Assembly Studio Automations](https://studio.assembly.com/docs/advanced-features/automations.md): Create, manage, and track automated workflows in Assembly. - [Intro to automations](https://studio.assembly.com/docs/advanced-features/automations-introduction.md): Save time and reduce errors by automating repetitive tasks across Assembly, Zapier, Make, and the API. - [Automations troubleshooting](https://studio.assembly.com/docs/advanced-features/automations-troubleshooting.md): Common issues and fixes when building automations with Zapier or Make. - [HIPAA compliance](https://studio.assembly.com/docs/advanced-features/hipaa-compliance.md): Request a BAA and configure Assembly's apps for HIPAA compliance on the Advanced plan. - [Recommended workflows](https://studio.assembly.com/docs/advanced-features/recommended-workflows.md): Popular workflow automations you can set up with the Assembly API, Zapier, or Make. - [Security](https://studio.assembly.com/docs/advanced-features/security.md): Assembly's data privacy and security commitments, including SOC 2, HIPAA, and GDPR. - [Command bar and shortcuts](https://studio.assembly.com/docs/advanced-features/shortcuts.md): Navigate the Assembly Dashboard with your keyboard. - [Workspace switching](https://studio.assembly.com/docs/advanced-features/workspace-switching.md): Set up multiple workspaces and switch between them from the Assembly Dashboard. - [Zapier and Make](https://studio.assembly.com/docs/advanced-features/zapier-and-make.md): How Zapier and Make automations work with Assembly using triggers, search steps, and actions. - [Create a client](https://studio.assembly.com/docs/api-reference/clients/create-a-client.md): Creates a client. Requires givenName, familyName, email, and a company association (companyId, or companyIds in multi-company portals). Set the `sendInvite=true` query param to email the client an invite on creation. - [Delete a client](https://studio.assembly.com/docs/api-reference/clients/delete-a-client.md): Deletes a client by ID. The response echoes the deleted object's ID with `deleted: true`. - [List clients](https://studio.assembly.com/docs/api-reference/clients/list-clients.md): Lists the clients within the portal, paginated. Supports filtering by company, name, email, and tag-based custom field values. - [Retrieve a client](https://studio.assembly.com/docs/api-reference/clients/retrieve-a-client.md): Returns a single client by ID. - [Retrieve a client with app visibility](https://studio.assembly.com/docs/api-reference/clients/retrieve-a-client-with-app-visibility.md): Returns the same Client object as GET /v1/clients/{id} with an additional `appVisibility` field nested at the root. The field is an array grouping the apps visible to the client by each company the client belongs to. The same install may appear in more than one group when visible across multiple com… - [Update a client](https://studio.assembly.com/docs/api-reference/clients/update-a-client.md): Partially updates a client. Only givenName, familyName, companyId, and customFields are mutable; any other field in the body is ignored and echoed back in the `X-Ignored-Fields` response header. Set `sendInvite=true` to send (or resend) the client's invite when they are not yet active. - [Delete a task comment](https://studio.assembly.com/docs/api-reference/comments/delete-a-task-comment.md): Deletes a task comment by id via the Tasks marketplace app installed on the workspace. The request is proxied to the app's comments API and returns the deleted comment marker. Requires the Tasks app to be installed. - [List task comments](https://studio.assembly.com/docs/api-reference/comments/list-task-comments.md): Lists task comments from the Tasks marketplace app installed on the workspace. The request is proxied to the app's comments API. Requires the Tasks app to be installed. - [Retrieve a task comment](https://studio.assembly.com/docs/api-reference/comments/retrieve-a-task-comment.md): Retrieves a single task comment by id from the Tasks marketplace app installed on the workspace. The request is proxied to the app's comments API. Requires the Tasks app to be installed. - [Add clients to a company](https://studio.assembly.com/docs/api-reference/companies/add-clients-to-a-company.md): Associates one or more existing clients with a company. Set `confirmPromotePlaceholder=true` to promote a placeholder company when adding clients. - [Create a company](https://studio.assembly.com/docs/api-reference/companies/create-a-company.md): Creates a company. Requires a name; fallbackColor, iconImageUrl, and customFields are optional. - [Delete a company](https://studio.assembly.com/docs/api-reference/companies/delete-a-company.md): Deletes a company by its ID. Returns the deleted object marker. - [List companies](https://studio.assembly.com/docs/api-reference/companies/list-companies.md): Lists the companies within the portal, paginated. Supports filtering by name (case-insensitive substring) and placeholder status. - [Retrieve a company](https://studio.assembly.com/docs/api-reference/companies/retrieve-a-company.md): Retrieves a single company by its ID. - [Update a company](https://studio.assembly.com/docs/api-reference/companies/update-a-company.md): Updates a company's name and/or custom field values. A non-empty name is required. - [Get Contract Template by ID](https://studio.assembly.com/docs/api-reference/contract-templates/get-contract-template-by-id.md): Retrieves a single contract template by its ID. - [List Contract Templates](https://studio.assembly.com/docs/api-reference/contract-templates/list-contract-templates.md): Returns a paginated list of contract templates for the workspace, optionally filtered by name. - [Get Contract](https://studio.assembly.com/docs/api-reference/contracts/get-contract.md): Retrieves a single contract by its ID. - [List contracts](https://studio.assembly.com/docs/api-reference/contracts/list-contracts.md): Returns a paginated list of contracts for the workspace, optionally filtered by status, template, recipient, or name. - [Send Contract](https://studio.assembly.com/docs/api-reference/contracts/send-contract.md): Creates and sends a contract to a recipient, either from a contract template or as a one-off contract. - [Create custom fields](https://studio.assembly.com/docs/api-reference/custom-fields/create-custom-fields.md): Creates one or more custom fields for the portal. Each field requires a name, a type, and the entity it belongs to. Options may only be supplied for multi-select fields. - [List custom field options](https://studio.assembly.com/docs/api-reference/custom-fields/list-custom-field-options.md): Lists the selectable options for a multi-select custom field. Supports filtering the returned options by label. - [List custom fields](https://studio.assembly.com/docs/api-reference/custom-fields/list-custom-fields.md): Lists the custom fields configured for the portal. Supports filtering by name and by the entity the field belongs to (client or company). - [Errors](https://studio.assembly.com/docs/api-reference/errors.md): HTTP status codes the API returns and the shape of the error response object - [Create an audit event](https://studio.assembly.com/docs/api-reference/events/create-an-audit-event.md): Records a custom audit log event for the authenticated workspace. Platform-API callers must be on an enterprise plan. - [Get audit event by ID](https://studio.assembly.com/docs/api-reference/events/get-audit-event-by-id.md): Returns a single audit log event by its ID for the authenticated workspace. - [List audit events](https://studio.assembly.com/docs/api-reference/events/list-audit-events.md): Returns a paginated list of audit log events for the authenticated workspace, optionally filtered by date range, event type, and actor. Requires internal-user privileges. - [Create File Channel](https://studio.assembly.com/docs/api-reference/file-channels/create-file-channel.md): Creates a file channel. Provide companyId for a company channel, clientId for an individual channel, or membershipType=group with memberIds. The legacy membershipEntityId/membershipType pair is still accepted. - [Get File Channel by id](https://studio.assembly.com/docs/api-reference/file-channels/get-file-channel-by-id.md): Retrieves a single file channel by its id. The requesting user must be a member of the channel. - [List File Channels](https://studio.assembly.com/docs/api-reference/file-channels/list-file-channels.md): Returns a paginated list of file channels, optionally filtered by company, client, or membership type. - [Create a File](https://studio.assembly.com/docs/api-reference/files/create-a-file.md): Creates a file, folder, or link record within a file channel. `channelID` is required; `path` is required for folders and `linkUrl` for links. Files default to "append" behavior (keep both, adding a numbered suffix) when a file with the same name already exists at the path. - [Delete a File](https://studio.assembly.com/docs/api-reference/files/delete-a-file.md): Deletes a file, folder, or link by its id and returns the deleted item reference. - [Get a File's contents](https://studio.assembly.com/docs/api-reference/files/get-a-files-contents.md): Streams the raw contents of a file as an octet-stream. - [Get a File's download url](https://studio.assembly.com/docs/api-reference/files/get-a-files-download-url.md): Returns a short-lived presigned download URL for a file's contents. - [Get a File's metadata](https://studio.assembly.com/docs/api-reference/files/get-a-files-metadata.md): Returns the metadata for a single file, folder, or link by its id. - [List files within a file channel](https://studio.assembly.com/docs/api-reference/files/list-files-within-a-file-channel.md): Lists files, folders, and links within a file channel. `channelId` is required; pass `path` to scope the listing to a folder within the channel. - [Update Folder Permissions](https://studio.assembly.com/docs/api-reference/files/update-folder-permissions.md): Updates the client access level on a folder. Requires internal-user privileges. On the Internal API the change cascades to all descendant folders; on the Platform API only the target folder is updated. - [Update Root Folder Permissions](https://studio.assembly.com/docs/api-reference/files/update-root-folder-permissions.md): Updates the client access level on a file channel's root folder. Requires internal-user privileges. On the Internal API the change cascades to all folders in the channel; on the Platform API only the root folder is updated. - [Assign a form to clients](https://studio.assembly.com/docs/api-reference/form-responses/assign-a-form-to-clients.md): Assigns a form to one or more clients, creating a pending form response for each recipient. Provide either clientIds or clientCompanyIds. - [Create a form](https://studio.assembly.com/docs/api-reference/forms/create-a-form.md): Creates a form with its questions. Note: Assembly forms do not support conditional/branching logic — questions are presented as a flat, ordered sequence. - [List a form's submissions](https://studio.assembly.com/docs/api-reference/forms/list-a-forms-submissions.md): Lists the submissions (form responses) for a form, paginated. Optionally filter by completion status. - [List forms](https://studio.assembly.com/docs/api-reference/forms/list-forms.md): Lists the forms within the portal, paginated. - [Retrieve a form](https://studio.assembly.com/docs/api-reference/forms/retrieve-a-form.md): Returns a single form, including its questions and response counts, by ID. - [Create an app install connection](https://studio.assembly.com/docs/api-reference/installs/create-an-app-install-connection.md): Creates an embed or link connection on a manual app install, scoped to a set of clients or a company. All targeted clients must belong to the same company. Requires internal-user privileges. - [Create an app install's notification settings](https://studio.assembly.com/docs/api-reference/installs/create-an-app-installs-notification-settings.md): Declares the initial notification settings of the install's backing app. This endpoint is create-only: when the app already has notification settings (created here or authored on the App Setup page) it fails with 409 and the settings must be changed via PATCH. Setting ids are stable identifiers refe… - [Get an app install](https://studio.assembly.com/docs/api-reference/installs/get-an-app-install.md): Returns a single app install by its ID. Core modules may be addressed by their deterministic UUID; marketplace, custom, embed, and link installs are addressed by their install ID. - [Get an app install's notification settings](https://studio.assembly.com/docs/api-reference/installs/get-an-app-installs-notification-settings.md): Returns the notification settings an app declares for the given install. Each setting's `id` is the value to pass as `notificationSettingId` when creating a notification via POST /v1/notifications. Installs whose backing app declares no notification settings return an empty `notifications` array. - [List app install connections](https://studio.assembly.com/docs/api-reference/installs/list-app-install-connections.md): Returns the app connections (per-client, per-group, or per-company embeds and links) attached to a manual app install. Optionally filter the result by company or client. The install must be a manual-type app; core and marketplace installs do not support connections. - [List app installs](https://studio.assembly.com/docs/api-reference/installs/list-app-installs.md): Returns every app install visible to the caller in the workspace, including core modules, marketplace apps, custom apps, embeds, and links. The set is scoped by the caller's permissions: clients only receive installs whose visibility rules include them. - [Update an app install's notification settings](https://studio.assembly.com/docs/api-reference/installs/update-an-app-installs-notification-settings.md): Applies partial changes to the notification settings of the install's backing app. Entries in `notifications` are per-setting deltas: an entry without an `id` adds a new setting (label and surfaces required; the id is generated), an entry with only an `id` deletes that setting, and an entry with an… - [Get an internal user](https://studio.assembly.com/docs/api-reference/internal-users/get-an-internal-user.md): Retrieves a single internal user (portal team member) by ID. - [Get an internal user's notification settings](https://studio.assembly.com/docs/api-reference/internal-users/get-an-internal-users-notification-settings.md): Retrieves an internal user's notification preferences: the global in-product toggle, the global email delivery mode, and per-category opt-outs under notifyAbout. Settings declared by the workspace's installed apps appear under dynamic customApp:: keys, using the app's d… - [List internal users](https://studio.assembly.com/docs/api-reference/internal-users/list-internal-users.md): Lists the internal users (portal team members) within the portal, paginated. - [Update an internal user](https://studio.assembly.com/docs/api-reference/internal-users/update-an-internal-user.md): Updates an internal user's client-access scope. Only the isClientAccessLimited and companyAccessList fields are accepted; all other fields are server-managed. - [Introduction](https://studio.assembly.com/docs/api-reference/introduction.md): Reference for the Assembly public API - [List invoice templates](https://studio.assembly.com/docs/api-reference/invoice-templates/list-invoice-templates.md): Returns a paginated list of the invoice templates configured for the portal. - [Create an invoice](https://studio.assembly.com/docs/api-reference/invoices/create-an-invoice.md): Creates an invoice for a client or company. Requires a recipient (clientId or companyId) and at least one line item. The collection method determines how the invoice is collected. - [List invoices](https://studio.assembly.com/docs/api-reference/invoices/list-invoices.md): Returns a paginated list of invoices for the portal. Supports filtering by client, company, and subscription. - [Retrieve an invoice](https://studio.assembly.com/docs/api-reference/invoices/retrieve-an-invoice.md): Returns a single invoice by ID. - [Retrieve the current user](https://studio.assembly.com/docs/api-reference/me/retrieve-the-current-user.md): Returns the user that owns the API key making the request. - [Create Message Channel](https://studio.assembly.com/docs/api-reference/message-channels/create-message-channel.md): Creates a message channel. Required fields depend on membershipType: company channels need membershipEntityId or companyId; individual channels need membershipEntityId or clientId; group channels need memberIds. - [Get a list of Message Channels](https://studio.assembly.com/docs/api-reference/message-channels/get-a-list-of-message-channels.md): Returns a paginated list of message channels the requester is a member of, optionally filtered by membership and enriched with unread state. - [Get Message Channel by id](https://studio.assembly.com/docs/api-reference/message-channels/get-message-channel-by-id.md): Returns a single message channel by id. The requester must be a member of the channel. - [Get unread message channels for a user](https://studio.assembly.com/docs/api-reference/message-channels/get-unread-message-channels-for-a-user.md): Returns the messaging channels where the specified user has unread messages, plus an aggregate total. When userId is omitted, the requester's own user is used. - [List messages](https://studio.assembly.com/docs/api-reference/messages/list-messages.md): Returns a paginated list of messages in a channel, most recent first. The channelId query parameter is required and must be a bare UUID (do not include the GetStream 'messaging:' prefix). A maximum of 100 messages are returned per page. - [Send a message](https://studio.assembly.com/docs/api-reference/messages/send-a-message.md): Sends a message to a channel. Requires channelId and text. channelId must be a bare UUID (do not include the GetStream 'messaging:' prefix). When senderId is provided it must be a member of the channel; otherwise the authenticated user is used as the author. - [Create a note](https://studio.assembly.com/docs/api-reference/notes/create-a-note.md): Creates an internal note attached to a client or company. Requires title, entityId, and entityType; content is optional. Only internal users with sufficient privileges can create notes. - [Delete a note](https://studio.assembly.com/docs/api-reference/notes/delete-a-note.md): Permanently deletes a note by ID and returns a deletion confirmation. Only internal users with access to the note's entity can delete it. - [List notes](https://studio.assembly.com/docs/api-reference/notes/list-notes.md): Returns a paginated list of notes. Filter by a client or company by supplying both entityId and entityType; when neither is supplied, all notes the caller can access are returned. Supplying entityId without entityType is rejected. - [Retrieve a note](https://studio.assembly.com/docs/api-reference/notes/retrieve-a-note.md): Returns a single note by ID. Only internal users with access to the note's entity can retrieve it. - [Update a note](https://studio.assembly.com/docs/api-reference/notes/update-a-note.md): Updates the title and/or content of an existing note. Only the fields supplied are changed. Only internal users with access to the note's entity can update it. - [Create a notification](https://studio.assembly.com/docs/api-reference/notifications/create-a-notification.md): Creates a notification for a recipient. Requires senderId, a recipient (recipientClientId or recipientInternalUserId), and at least one delivery target. Notifications can only be created from a custom app. When notificationSettingId is provided and the recipient's notification settings disable every… - [Delete a notification](https://studio.assembly.com/docs/api-reference/notifications/delete-a-notification.md): Deletes a notification by ID. - [List notifications](https://studio.assembly.com/docs/api-reference/notifications/list-notifications.md): Returns a paginated list of notifications for a recipient. When no recipient filter is supplied, the authenticated user's notifications are returned. Only unread notifications are returned unless includeRead is true. - [Mark notification as read](https://studio.assembly.com/docs/api-reference/notifications/mark-notification-as-read.md): Marks a notification as read and returns the updated notification. - [Mark notification as unread](https://studio.assembly.com/docs/api-reference/notifications/mark-notification-as-unread.md): Marks a notification as unread and returns the updated notification. - [Retrieve a notification](https://studio.assembly.com/docs/api-reference/notifications/retrieve-a-notification.md): Returns a single notification by ID. - [Pagination](https://studio.assembly.com/docs/api-reference/pagination.md): How list endpoints return results in pages using nextToken and limit - [List payments](https://studio.assembly.com/docs/api-reference/payments/list-payments.md): Returns a paginated list of payments for the portal. When invoiceId is supplied, only payments for that invoice are returned. Requires internal-user privileges. - [Create a price](https://studio.assembly.com/docs/api-reference/prices/create-a-price.md): Creates a price for a product. Requires internal-user privileges. The product must already exist, and the price must be unique within the product (a recurring price is unique by amount, currency, and interval; a one-time price is unique by amount and currency). - [List prices](https://studio.assembly.com/docs/api-reference/prices/list-prices.md): Returns a paginated list of prices. When productId is supplied, only prices belonging to that product are returned; otherwise all prices for the portal are returned. Requires internal-user privileges. - [Retrieve a price](https://studio.assembly.com/docs/api-reference/prices/retrieve-a-price.md): Returns a single price by ID scoped to the authenticated portal. - [Create a product](https://studio.assembly.com/docs/api-reference/products/create-a-product.md): Creates a product, optionally bundling one or more prices supplied in the request body. Only the product name is required; status, portal, and price IDs are assigned by the server. - [Get a product by ID](https://studio.assembly.com/docs/api-reference/products/get-a-product-by-id.md): Returns a single product scoped to the caller's portal. When the product has exactly one price, that price is embedded in the response. - [List products](https://studio.assembly.com/docs/api-reference/products/list-products.md): Returns a paginated list of products in the caller's portal, optionally filtered by name (case-insensitive substring match). - [Create a refund](https://studio.assembly.com/docs/api-reference/refunds/create-a-refund.md): Issues a refund against a paid invoice. The refund may be queued for review depending on the portal's billing configuration. - [List refunds](https://studio.assembly.com/docs/api-reference/refunds/list-refunds.md): Returns a paginated list of refunds issued against an invoice. Requires internal-user privileges. - [App Connections](https://studio.assembly.com/docs/api-reference/resources/app-connections.md): A connection between a manual-type app install and a client, company, or group of clients, delivering embed or link content. - [App Installs](https://studio.assembly.com/docs/api-reference/resources/app-installs.md): An instance of an app added to a workspace, covering core, marketplace, custom, embed, link, and manual app types. - [Clients](https://studio.assembly.com/docs/api-reference/resources/clients.md): A client user in your Assembly workspace, with profile, status, and custom field data. - [Companies](https://studio.assembly.com/docs/api-reference/resources/companies.md): A company in your Assembly workspace, grouping clients and storing shared metadata. - [Contract Templates](https://studio.assembly.com/docs/api-reference/resources/contract-templates.md): A reusable contract template that can be sent to clients for signing. - [Contracts](https://studio.assembly.com/docs/api-reference/resources/contracts.md): A contract created when a client is requested to sign a Contract Template. - [Custom Field Options](https://studio.assembly.com/docs/api-reference/resources/custom-field-options.md): Options for multi-select custom fields, defining the available tag values and their display colors. - [Custom Fields](https://studio.assembly.com/docs/api-reference/resources/custom-fields.md): Workspace-level custom field definitions that store structured metadata on clients and companies. - [Events](https://studio.assembly.com/docs/api-reference/resources/events.md): An audit log entry recording an action taken within a workspace, capturing who acted, when, and from which source. - [File Channels](https://studio.assembly.com/docs/api-reference/resources/file-channels.md): A channel where files can be shared across clients and companies, with membership scoped to individuals, groups, or companies. - [Files](https://studio.assembly.com/docs/api-reference/resources/files.md): A file, folder, or link shared in the Files App of your portal, belonging to a File Channel. - [Form Responses](https://studio.assembly.com/docs/api-reference/resources/form-responses.md): A relationship between a client and a form, capturing the client's answers once the form is submitted. - [Forms](https://studio.assembly.com/docs/api-reference/resources/forms.md): The questions and configuration of a form in your portal, with responses stored as Form Response entities. - [Internal Users](https://studio.assembly.com/docs/api-reference/resources/internal-users.md): An internal (team member) user in your Assembly workspace, with role and client-access settings. - [Invoice Templates](https://studio.assembly.com/docs/api-reference/resources/invoice-templates.md): Represents a reusable invoice template with predefined line items, tax settings, and other invoice details for creating invoices consistently. - [Invoices](https://studio.assembly.com/docs/api-reference/resources/invoices.md): Represents an invoice, which can be created one-off or as part of a recurring subscription, consisting of line items connected to Products & Prices or one-off items. - [Message Channels](https://studio.assembly.com/docs/api-reference/resources/message-channels.md): A messaging channel between internal users and clients, scoped to an individual, group, or company. - [Messages](https://studio.assembly.com/docs/api-reference/resources/messages.md): Represents a message sent by an Internal User or Client in the Messages App of your portal, inside a Message Channel. - [Notes](https://studio.assembly.com/docs/api-reference/resources/notes.md): A note attached to a client or company in your workspace, supporting rich HTML content. - [Notifications](https://studio.assembly.com/docs/api-reference/resources/notifications.md): A notification received by an internal or client user, supporting in-product and email delivery targets. - [Payments](https://studio.assembly.com/docs/api-reference/resources/payments.md): Represents a payment associated with an invoice, including details about the payment method used, payment status, and any applicable fees. - [Prices](https://studio.assembly.com/docs/api-reference/resources/prices.md): Represents a price for a product; each product can have many unique prices supporting one-time or recurring billing intervals. - [Products](https://studio.assembly.com/docs/api-reference/resources/products.md): Represents a product that can be used as a line item for an invoice, subscription, or payment link; each product must have a unique name. - [Subscription Templates](https://studio.assembly.com/docs/api-reference/resources/subscription-templates.md): A reusable configuration for creating subscriptions with predefined line items, tax settings, and billing intervals. - [Subscriptions](https://studio.assembly.com/docs/api-reference/resources/subscriptions.md): Represents a subscription that can be created using a template or individual line items, configured to automatically charge or send invoices based on a billing interval. - [Task Comments](https://studio.assembly.com/docs/api-reference/resources/task-comments.md): A comment created on a task within a workspace, supporting attachments and threaded replies. - [Task Templates](https://studio.assembly.com/docs/api-reference/resources/task-templates.md): A task template created within a workspace used to pre-fill task name, description, and subtasks. - [Tasks](https://studio.assembly.com/docs/api-reference/resources/tasks.md): A task created within a workspace. Requires the Tasks App to be enabled. - [Workspaces](https://studio.assembly.com/docs/api-reference/resources/workspaces.md): A workspace encompassing the Assembly Dashboard for internal users and the client portal, with branding and configuration settings. - [List subscription templates](https://studio.assembly.com/docs/api-reference/subscription-templates/list-subscription-templates.md): Returns a paginated list of the portal's subscription templates. - [Cancel a subscription](https://studio.assembly.com/docs/api-reference/subscriptions/cancel-a-subscription.md): Cancels an active subscription (or its underlying schedule) and returns the updated subscription. Cancelling an already-cancelled subscription returns an error. - [Create a subscription](https://studio.assembly.com/docs/api-reference/subscriptions/create-a-subscription.md): Creates a recurring subscription for a client or company. Requires a recipient (clientId or companyId), at least one line item, and a connected payout account on the portal. The billing interval is inferred from recurring prices when present, otherwise taken from the request. - [List subscriptions](https://studio.assembly.com/docs/api-reference/subscriptions/list-subscriptions.md): Returns a paginated list of subscriptions for the portal. Optionally filter by recipient; when both clientId and companyId are supplied, clientId takes precedence. - [Retrieve a subscription](https://studio.assembly.com/docs/api-reference/subscriptions/retrieve-a-subscription.md): Returns a single subscription by ID, scoped to the caller's portal. - [List task templates](https://studio.assembly.com/docs/api-reference/task-templates/list-task-templates.md): Lists task templates from the Tasks marketplace app installed on the workspace. The request is proxied to the app's task-templates API. Requires the Tasks app to be installed. - [Retrieve a task template](https://studio.assembly.com/docs/api-reference/task-templates/retrieve-a-task-template.md): Retrieves a single task template by id from the Tasks marketplace app installed on the workspace. The request is proxied to the app's task-templates API. Requires the Tasks app to be installed. - [Create a task](https://studio.assembly.com/docs/api-reference/tasks/create-a-task.md): Creates a task via the Tasks marketplace app installed on the workspace. The request body is validated against the app's registered resource schema and proxied to the app's task API. Requires the Tasks app to be installed. - [Delete a task](https://studio.assembly.com/docs/api-reference/tasks/delete-a-task.md): Deletes a task by id via the Tasks marketplace app installed on the workspace. The request is proxied to the app's task API and returns the deleted task marker. Requires the Tasks app to be installed. - [List tasks](https://studio.assembly.com/docs/api-reference/tasks/list-tasks.md): Lists tasks from the Tasks marketplace app installed on the workspace. The request is proxied to the app's task API and the response shape is defined by that app's registered resource schema. Requires the Tasks app to be installed. - [Retrieve a task](https://studio.assembly.com/docs/api-reference/tasks/retrieve-a-task.md): Retrieves a single task by id from the Tasks marketplace app installed on the workspace. The request is proxied to the app's task API. Requires the Tasks app to be installed. - [Update a task](https://studio.assembly.com/docs/api-reference/tasks/update-a-task.md): Partially updates a task by id via the Tasks marketplace app installed on the workspace. Only the provided fields are changed. The request is proxied to the app's task API. Requires the Tasks app to be installed. - [Issue an app-scoped offline bearer token](https://studio.assembly.com/docs/api-reference/token/issue-an-app-scoped-offline-bearer-token.md): Issues a short-lived, app-scoped bearer token using the app API key alone — no user session required. Intended for cron jobs and background workers that operate outside a user iframe. The token expires after one hour; re-mint it from the API key on expiry. - [Events](https://studio.assembly.com/docs/api-reference/webhooks/events.md): The webhook event types that deliver an event object to your registered endpoints - [Overview](https://studio.assembly.com/docs/api-reference/webhooks/overview.md): How webhooks deliver event payloads, how to respond, and how to verify their signatures - [Retrieve the workspace](https://studio.assembly.com/docs/api-reference/workspaces/retrieve-the-workspace.md): Returns the configuration and branding of the workspace associated with the authenticated API key's portal. - [AI bot for app help](https://studio.assembly.com/docs/building-new-apps/ai-bot-for-app-help.md) - [App templates](https://studio.assembly.com/docs/building-new-apps/app-templates.md) - [Contact us](https://studio.assembly.com/docs/building-new-apps/contact-us.md) - [Controlling app visibility](https://studio.assembly.com/docs/building-new-apps/controlling-app-visibility.md) - [Introduction](https://studio.assembly.com/docs/building-new-apps/introduction.md) - [Iterating on apps](https://studio.assembly.com/docs/building-new-apps/iterating-on-apps.md) - [Launching apps](https://studio.assembly.com/docs/building-new-apps/launching-apps.md) - [Troubleshooting apps you built](https://studio.assembly.com/docs/building-new-apps/troubleshooting-apps-you-built.md) - [Writing initial prompts](https://studio.assembly.com/docs/building-new-apps/writing-initial-prompts.md) - [Autoresponder app](https://studio.assembly.com/docs/built-in-apps/autoresponder.md): Send automatic responses to clients outside of business hours or while you're away. - [Client billing experience](https://studio.assembly.com/docs/built-in-apps/client-billing-experience.md): How clients are notified about, pay, and manage payment methods for invoices and subscriptions in your portal. - [Contracts app](https://studio.assembly.com/docs/built-in-apps/contracts.md): Prepare, sign, send, and manage all your eSignature contracts in one place. - [Exporter app](https://studio.assembly.com/docs/built-in-apps/exporter.md): Export message histories from the Assembly Dashboard as CSV or PDF. - [Fees & payment reconciliation](https://studio.assembly.com/docs/built-in-apps/fees-and-reconciliation.md): Understand payment processing fees and how to reconcile payouts in Stripe Express. - [Files app](https://studio.assembly.com/docs/built-in-apps/files.md): Securely share files, links, and folders with your clients. - [Forms app](https://studio.assembly.com/docs/built-in-apps/forms.md): Collect data from clients with the Forms app. - [Helpdesk app](https://studio.assembly.com/docs/built-in-apps/helpdesk.md): Create a collection of articles that clients can access, organized with tags and rich formatting. - [Client Home app](https://studio.assembly.com/docs/built-in-apps/home.md): Create a dynamic, personalized homepage for your clients within your portal. - [Introduction](https://studio.assembly.com/docs/built-in-apps/introduction.md): Apps Assembly builds and maintains, ready to turn on in your portal. - [Invoicing](https://studio.assembly.com/docs/built-in-apps/invoicing.md): Create, manage, and send invoices to your clients and companies. - [Messages app](https://studio.assembly.com/docs/built-in-apps/messages.md) - [Payment links](https://studio.assembly.com/docs/built-in-apps/payment-links.md): Receive payments from people who don't yet have a client account in your portal. - [Payments app](https://studio.assembly.com/docs/built-in-apps/payments.md): Manage all aspects of client billing, including services, invoices, subscriptions, payment links, and a branded store. - [Profile Manager app](https://studio.assembly.com/docs/built-in-apps/profile-manager.md): Let clients view and edit their own custom fields directly in their portal. - [QuickBooks integration](https://studio.assembly.com/docs/built-in-apps/quickbooks.md): Set up the one-way sync from the Assembly Dashboard to your QuickBooks Online account. - [Services](https://studio.assembly.com/docs/built-in-apps/services.md): Create, view, and update services and their prices for invoices and subscriptions. - [Store](https://studio.assembly.com/docs/built-in-apps/store.md): Set up a digital storefront where clients can purchase your service packages. - [Subscriptions](https://studio.assembly.com/docs/built-in-apps/subscriptions.md): Create and manage recurring subscriptions, templates, and the invoices they generate. - [Tasks app](https://studio.assembly.com/docs/built-in-apps/tasks.md): Create and assign tasks to team members, clients, and companies. - [Xero](https://studio.assembly.com/docs/built-in-apps/xero.md): Connect Xero to synchronize invoices and clients made in Assembly. - [Assembly Assistant](https://studio.assembly.com/docs/connect-ai-tools/assembly-assistant.md): Your built-in AI partner for chatting with your team, drafting client messages, and managing work across Assembly. - [MCP (beta)](https://studio.assembly.com/docs/connect-ai-tools/mcp.md): Connect AI tools like Claude, ChatGPT, and Cursor to your Assembly workspace using MCP. - [Advanced import](https://studio.assembly.com/docs/core-concepts/advanced-import.md): Bulk import and update contacts or companies from a .csv file. - [Apps](https://studio.assembly.com/docs/core-concepts/apps.md) - [Client access](https://studio.assembly.com/docs/core-concepts/client-access.md): Control which internal team members can view specific clients across the Assembly Platform. - [Client notifications](https://studio.assembly.com/docs/core-concepts/client-notifications.md): How clients receive in-product and email notifications, automated reminders, and how to mute them. - [Contact direct sign up](https://studio.assembly.com/docs/core-concepts/contact-direct-sign-up.md): Let contacts self-serve create accounts and automate onboarding. - [Contacts and companies](https://studio.assembly.com/docs/core-concepts/contacts-and-companies.md) - [Create contacts one at a time](https://studio.assembly.com/docs/core-concepts/create-contacts-one-at-a-time.md): Add a single contact from the Contacts page and invite them now or later. - [Custom fields](https://studio.assembly.com/docs/core-concepts/custom-fields.md): Track additional properties on contacts and companies. - [Custom visibility for apps](https://studio.assembly.com/docs/core-concepts/custom-visibility.md): Dynamically control which clients can access an app. - [Internal notes](https://studio.assembly.com/docs/core-concepts/internal-notes.md): Add private notes to contacts and companies that only internal users can see. - [Internal user notifications](https://studio.assembly.com/docs/core-concepts/internal-user-notifications.md): Configure how internal users receive product and email notifications. - [Internal users](https://studio.assembly.com/docs/core-concepts/internal-users.md) - [Magic links](https://studio.assembly.com/docs/core-concepts/magic-links.md): Let contacts log in to your portal with secure, one-time links sent in email notifications. - [Notifications](https://studio.assembly.com/docs/core-concepts/notifications.md) - [Organizing your apps](https://studio.assembly.com/docs/core-concepts/organizing-apps.md): Reorder apps, group them into folders, and control sidebar visibility. - [The Assembly Studio Dashboard](https://studio.assembly.com/docs/core-concepts/the-assembly-studio-dashboard.md) - [Your Portal](https://studio.assembly.com/docs/core-concepts/your-portal.md) - [Acuity Scheduling embed](https://studio.assembly.com/docs/embeds-and-links/acuity-scheduling.md): Embed your Acuity Scheduling calendar in the portal so clients can book appointments. - [Airtable embed](https://studio.assembly.com/docs/embeds-and-links/airtable.md): Share relational databases with clients by embedding Airtable tables and views in your portal. - [Overview](https://studio.assembly.com/docs/embeds-and-links/analytics.md): Analytics and dashboard tools you can embed or link in Assembly. - [Calendly embed](https://studio.assembly.com/docs/embeds-and-links/calendly.md): Embed your Calendly scheduling page or a specific event so clients can book time directly from your portal. - [Canva embed](https://studio.assembly.com/docs/embeds-and-links/canva.md): Embed a Canva design into your Assembly portal. - [ClickUp embed](https://studio.assembly.com/docs/embeds-and-links/clickup.md): Share ClickUp Spaces and Documents with clients directly within the portal. - [Databox embed](https://studio.assembly.com/docs/embeds-and-links/databox.md): Embed Databox Databoards into your Assembly portal so clients can track performance in real time. - [Overview](https://studio.assembly.com/docs/embeds-and-links/design-and-media.md): Design and media tools you can embed or link in Assembly. - [Figma embed](https://studio.assembly.com/docs/embeds-and-links/figma.md): Embed Figma designs in your portal to share them with clients. - [Overview](https://studio.assembly.com/docs/embeds-and-links/forms-and-surveys.md): Forms and survey tools you can embed or link in Assembly. - [Google Calendar embed](https://studio.assembly.com/docs/embeds-and-links/google-calendar.md): Embed your Google Calendar directly into Assembly so clients can view your shared calendar. - [Google Docs embed](https://studio.assembly.com/docs/embeds-and-links/google-docs.md): Embed Google Docs in your client portal for viewing or collaborative editing. - [Google Drive embed](https://studio.assembly.com/docs/embeds-and-links/google-drive.md): Embed Google Drive files and folders into your portal. - [Google Forms embed](https://studio.assembly.com/docs/embeds-and-links/google-forms.md): Embed a Google Form or survey into a client-facing app in your portal. - [Google Sheets embed](https://studio.assembly.com/docs/embeds-and-links/google-sheets.md): Share Google Sheets with clients directly in your portal as view-only or editable embeds. - [Google Slides embed](https://studio.assembly.com/docs/embeds-and-links/google-slides.md): Embed a Google Slides presentation to share it with clients directly in your portal. - [HubSpot Forms embed](https://studio.assembly.com/docs/embeds-and-links/hubspot-forms.md): Embed HubSpot Forms directly into Assembly so clients can submit them in the portal. - [HubSpot Meetings embed](https://studio.assembly.com/docs/embeds-and-links/hubspot-meetings.md): Embed HubSpot Meetings into Assembly so clients can book time with you directly in the portal. - [Introduction](https://studio.assembly.com/docs/embeds-and-links/introduction.md) - [Jotform embed](https://studio.assembly.com/docs/embeds-and-links/jotform.md): Embed a Jotform directly within your portal. - [Looker Studio embed](https://studio.assembly.com/docs/embeds-and-links/looker-studio.md): Embed Looker Studio dashboards and reports directly into your portal. - [Loom embed](https://studio.assembly.com/docs/embeds-and-links/loom.md): Embed a Loom video in your portal as a client-facing app. - [Miro embed](https://studio.assembly.com/docs/embeds-and-links/miro.md): Embed Miro boards in your portal to share visual workspaces with clients. - [Monday embed](https://studio.assembly.com/docs/embeds-and-links/monday.md): Connect a Monday.com board view to your portal as an embed or link. - [Notion embed](https://studio.assembly.com/docs/embeds-and-links/notion.md): Embed a published Notion page as a welcome page inside your client portal. - [OneDrive embed](https://studio.assembly.com/docs/embeds-and-links/onedrive.md): Embed individual OneDrive files into your client portal. - [Power BI Embed](https://studio.assembly.com/docs/embeds-and-links/power-bi.md): Connect and embed a Power BI report for your clients inside Assembly. - [Overview](https://studio.assembly.com/docs/embeds-and-links/productivity-and-project-management.md): Productivity and project management tools you can embed or link in Assembly. - [Overview](https://studio.assembly.com/docs/embeds-and-links/scheduling.md): Scheduling tools you can embed or link in Assembly. - [Squarespace embed](https://studio.assembly.com/docs/embeds-and-links/squarespace.md): Embed your Squarespace website directly within your client portal. - [Trello embed](https://studio.assembly.com/docs/embeds-and-links/trello.md): Embed Trello boards directly in your client portal for project collaboration. - [Typeform embed](https://studio.assembly.com/docs/embeds-and-links/typeform.md): Embed Typeform forms directly within your portal. - [URL parameters](https://studio.assembly.com/docs/embeds-and-links/url-parameters.md): Pass client and company data into automatic embeds using URL parameters. - [YouTube embed](https://studio.assembly.com/docs/embeds-and-links/youtube.md): Embed a YouTube video directly into your portal. - [Zoom scheduling embed](https://studio.assembly.com/docs/embeds-and-links/zoom-scheduling.md): Schedule and automate appointments with your clients by embedding a Zoom Scheduler in your portal. - [Adding your first client](https://studio.assembly.com/docs/getting-started/adding-your-first-contact.md) - [Build your first app](https://studio.assembly.com/docs/getting-started/build-your-first-app.md) - [Custom domains](https://studio.assembly.com/docs/getting-started/custom-domains.md): Set up a custom web and email domain for your portal, and troubleshoot verification issues. - [Customizations](https://studio.assembly.com/docs/getting-started/customizations.md): Brand your workspace once — logo, colors, name — and every app inherits it. - [Try the client experience](https://studio.assembly.com/docs/getting-started/try-the-contact-experience.md) - [Welcome](https://studio.assembly.com/docs/getting-started/welcome.md) - [Affiliates program](https://studio.assembly.com/docs/programs-and-support/affiliates-program.md): Earn recurring revenue share by telling your audience about Assembly. - [AI bot for app help](https://studio.assembly.com/docs/programs-and-support/ai-bot-for-app-help.md) - [Slack community](https://studio.assembly.com/docs/programs-and-support/community.md) - [Contact us](https://studio.assembly.com/docs/programs-and-support/contact-us.md) - [Demo portals](https://studio.assembly.com/docs/programs-and-support/demo-portals.md): Explore industry-specific demo portals to see what's possible with Assembly. - [Experts program](https://studio.assembly.com/docs/programs-and-support/experts-program.md): Earn recurring revenue share by setting up Assembly workspaces and building custom solutions for your clients. - [Getting help](https://studio.assembly.com/docs/programs-and-support/getting-help.md) - [Troubleshooting apps you built](https://studio.assembly.com/docs/programs-and-support/troubleshooting-apps-you-built.md) - [Driving adoption](https://studio.assembly.com/docs/rolling-out-to-clients/driving-adoption.md) - [Introduction](https://studio.assembly.com/docs/rolling-out-to-clients/introduction.md) - [Inviting clients](https://studio.assembly.com/docs/rolling-out-to-clients/inviting-clients.md): Three ways to get clients into your portal: one at a time, in bulk, or via direct sign up. - [The client's first session](https://studio.assembly.com/docs/rolling-out-to-clients/the-clients-first-session.md) ## OpenAPI Specs - [openapi](https://studio.assembly.com/docs/api-reference/openapi.json)