# API Reference | Assembly Documentation
## Guides
- [Performance guidelines](https://docs.assembly.com/docs/best-practices-performance-guidelines.md)
- [Developing a Custom App](https://docs.assembly.com/docs/custom-apps-developing-your-first-app.md)
- [Open-source examples](https://docs.assembly.com/docs/custom-apps-open-source-examples.md)
- [Overview](https://docs.assembly.com/docs/custom-apps-overview.md): Intro to the Assembly Platform and Custom Apps
- [Setting up the SDK](https://docs.assembly.com/docs/custom-apps-setting-up-the-sdk.md)
- [Setting up your first app](https://docs.assembly.com/docs/custom-apps-setting-up-your-first-app.md)
- [App submission process](https://docs.assembly.com/docs/marketplace-apps-app-submission-process.md)
- [Developing a Marketplace App](https://docs.assembly.com/docs/marketplace-apps-developing-a-marketplace-app.md)
- [Overview](https://docs.assembly.com/docs/marketplace-apps-overview.md): Intro to Marketplace Apps
## API Reference
- [Invoice Templates](https://docs.assembly.com/reference/invoice-templates.md)
- [List Invoice Templates](https://docs.assembly.com/reference/list-invoice-templates.md): This API endpoint lists all the invoice templates for the workspace.
- [Create Invoice](https://docs.assembly.com/reference/create-invoice.md): This API endpoint create an invoice and automatically assigns it to given recipient to pay
- [Invoices](https://docs.assembly.com/reference/invoices.md)
- [List Invoices](https://docs.assembly.com/reference/list-invoices.md)
- [Retrieve Invoice](https://docs.assembly.com/reference/retrieve-invoice.md)
- [Payments](https://docs.assembly.com/reference/payments.md)
- [List Payments](https://docs.assembly.com/reference/list-payments.md): This API endpoint lists the payments in a workspace.
Filter can be applied on invoice ID to list a payment for a specific invoice.
- [Prices](https://docs.assembly.com/reference/prices.md)
- [List Prices](https://docs.assembly.com/reference/list-prices.md): This API endpoint lists the prices for products in a workspace.
- [Retrieve Price](https://docs.assembly.com/reference/retrieve-price.md): This API endpoint retrieves a specific price.
- [Products](https://docs.assembly.com/reference/products.md)
- [List Products](https://docs.assembly.com/reference/list-products.md): This API endpoint lists the contracts in a workspace.
- [Retrieve Product](https://docs.assembly.com/reference/retrieve-product.md): This API endpoint retrieves a specific product.
- [Subscription Templates](https://docs.assembly.com/reference/subscription-templates.md)
- [List Subscription Templates](https://docs.assembly.com/reference/list-subscription-templates.md)
- [Cancel Subscription](https://docs.assembly.com/reference/cancel-subscription.md): This API endpoint cancels a subscription with status `active` or `notStarted`
- [Create Subscription](https://docs.assembly.com/reference/create-subscription.md): This API endpoint creates a subscription. A subscription is used to bill clients on a recurring basis.
- [Subscriptions](https://docs.assembly.com/reference/subscriptions.md)
- [List Subscriptions](https://docs.assembly.com/reference/list-subscriptions.md)
- [Retrieve Subscription](https://docs.assembly.com/reference/retrieve-subscription.md): This API endpoint retrieves a specific subscription.
- [Contract Templates](https://docs.assembly.com/reference/contract-templates.md)
- [List Contract Templates](https://docs.assembly.com/reference/list-contract-templates.md): This API endpoint retrieves the list of contract templates. You can use the query params to filter a subset of companies who match specific field values.
- [Retrieve Contract Template](https://docs.assembly.com/reference/retrieve-contract-template.md): This API endpoint retrieves a specific contract template.
- [Contracts](https://docs.assembly.com/reference/contracts.md)
- [List Contracts](https://docs.assembly.com/reference/list-contracts.md): This API endpoint retrieves contracts.
- [Retrieve Contract](https://docs.assembly.com/reference/retrieve-contract.md): This API endpoint retrieves a specific contract.
- [Send Contract](https://docs.assembly.com/reference/send-contract.md): This API endpoint sends a contract to the specified recipient.
- [Create Client](https://docs.assembly.com/reference/create-client.md): This API endpoint creates a client.
- [Delete Client](https://docs.assembly.com/reference/delete-client.md): This API endpoint permanently removes a specific client. When a client is deleted, the associated individual file and message channels are also deleted.
- [Clients](https://docs.assembly.com/reference/clients.md)
- [List Clients](https://docs.assembly.com/reference/list-clients.md): This API endpoint retrieves a list of clients.
You can use the query params to filter a subset of clients who match specific field values.
- [Retrieve Client](https://docs.assembly.com/reference/retrieve-client.md): This API endpoint retrieves a specific client.
- [Update Client](https://docs.assembly.com/reference/update-client.md): This API endpoint updates a specific client.
This PATCH request will only update the fields you specify (including custom fields), leaving the rest as they were.
Please note that for multi-select (tag) custom fields, all custom field options (tag values) must be included, the PATCH request will not preserve existing custom field options (tags).
- [Create Company](https://docs.assembly.com/reference/create-company.md): This API endpoint creates a company.
- [Delete Company](https://docs.assembly.com/reference/delete-company.md): This API endpoint permanently removes a specific company. All clients that are part of this company will no longer be associated with any company (and each will instead be associated with a new placeholder company). When a company is deleted, the associated company file and message channels are also deleted.
- [Companies](https://docs.assembly.com/reference/companies.md)
- [List Companies](https://docs.assembly.com/reference/list-companies.md): This API endpoint retrieves the list of companies.
You can use the query params to filter a subset of companies who match specific field values.
- [Retrieve Company](https://docs.assembly.com/reference/retrieve-company.md): This API endpoint retrieves a specific company.
- [Update Company](https://docs.assembly.com/reference/update-company.md): This API endpoint updates a specific company.
- [Internal Users](https://docs.assembly.com/reference/internal-users.md)
- [List Internal Users](https://docs.assembly.com/reference/list-internal-users.md): This API endpoint retrieves a list of internal users.
- [Retrieve Internal User](https://docs.assembly.com/reference/retrieve-internal-user.md): This API endpoint retrieves a specific internal user.
- [Workspaces](https://docs.assembly.com/reference/workspaces.md)
- [Retrieve Workspace](https://docs.assembly.com/reference/retrieve-workspace.md): This API endpoint retrieves information about a workspace.
- [Custom Field Options](https://docs.assembly.com/reference/custom-field-options.md)
- [List Custom Field Options](https://docs.assembly.com/reference/list-custom-field-options.md): Get a list of options for a multi-select custom field.
You can use the query params to filter for a single matching custom field option.
- [Custom Fields](https://docs.assembly.com/reference/custom-fields.md)
- [List Custom Fields](https://docs.assembly.com/reference/list-custom-fields.md): This API endpoint retrieves a list of all the custom fields that have been created in your workspace.
- [Create Note](https://docs.assembly.com/reference/create-note.md): This API endpoint creates a note on a specified client or company in your workspace.
- [Delete Note](https://docs.assembly.com/reference/delete-note.md): This API endpoint permanently removes a specific note.
- [Notes](https://docs.assembly.com/reference/notes.md)
- [List Notes](https://docs.assembly.com/reference/list-notes.md): This API endpoint retrieves a list of notes on clients or companies in your workspace.
You can use the query params to filter a subset of clients or companies that match the specified field values.
- [Retrieve Note](https://docs.assembly.com/reference/retrieve-note.md): This API endpoint retrieves a specific note.
- [Update Note](https://docs.assembly.com/reference/update-note.md): This API endpoint updates a specific note.
This PATCH request will only update the fields you specify, leaving the rest as they were.
- [Create File Channel](https://docs.assembly.com/reference/create-file-channel.md): This API endpoint creates a new file channel. See the File Channel resource for detailed descriptions of the properties.
- [File Channels](https://docs.assembly.com/reference/file-channels.md)
- [List File Channels](https://docs.assembly.com/reference/list-file-channels.md): This API endpoint retrieves a list of file channels.
You can use the query params to filter a subset of the file channels that match the specified field values.
- [Retrieve File Channel](https://docs.assembly.com/reference/retrieve-file-channel.md): This API endpoint retrieves a specific file channel.
- [Create File](https://docs.assembly.com/reference/create-file.md): These are 3 API endpoints which create a file object in a File Channel, of type `file`, `folder` or `link`, based on the `fileType` path parameter that you specify.
- [Delete File](https://docs.assembly.com/reference/delete-file.md): This API endpoint permanently removes a specific file, folder, or link.
If the deleted object is a folder, this operation is not recursive and files within the folder will not be deleted. You will receive a ‘Folder is not empty’ error message and the folder will not be deleted.
- [Files](https://docs.assembly.com/reference/files.md)
- [List Files](https://docs.assembly.com/reference/list-files.md): This API endpoint retrieves the list of files in a file channel.
- [Retrieve File](https://docs.assembly.com/reference/retrieve-file.md): This endpoint returns the metadata for a specific file object.
- [Update Folder Client Permissions](https://docs.assembly.com/reference/update-folder-permissions.md): Control client access to files and folders by setting permissions at the folder level or root level of a file channel.
- [Form Responses](https://docs.assembly.com/reference/form-responses.md)
- [List Form Responses](https://docs.assembly.com/reference/list-form-responses.md): This API endpoint retrieves all the responses (Pending & Completed) to a given form.
- [Request Form Response](https://docs.assembly.com/reference/request-form-response.md): This API endpoint sends a form to client(s) for them to complete.
- [Forms](https://docs.assembly.com/reference/forms.md)
- [List Forms](https://docs.assembly.com/reference/list-forms.md): This API endpoint retrieves a list of forms.
- [Retrieve Form](https://docs.assembly.com/reference/retrieve-form.md): This API endpoint retrieves a specific form.
- [Errors](https://docs.assembly.com/reference/getting-started-errors.md)
- [Introduction](https://docs.assembly.com/reference/getting-started-introduction.md)
- [Pagination](https://docs.assembly.com/reference/getting-started-pagination.md)
- [Create Message Channel](https://docs.assembly.com/reference/create-message-channel.md): This API endpoint creates a new message channel. See the [Message Channel](ref:message-channels) resource for detailed descriptions of the properties.
- [Message Channels](https://docs.assembly.com/reference/message-channels.md)
- [Retrieve Message Channel](https://docs.assembly.com/reference/retrieve-message-channel.md): This API endpoint retrieves a specific message channel in your portal.
- [Messages](https://docs.assembly.com/reference/messages.md)
- [List Messages](https://docs.assembly.com/reference/list-messages.md): This API endpoint retrieves a list of messages in a given Message Channel. Messages are paginated and returned in descending chronological order.
- [Send Message](https://docs.assembly.com/reference/send-message.md): This API endpoint sends a message within a Message Channel.
- [Create App Connection](https://docs.assembly.com/reference/create-app-connection.md): This endpoint creates an app connection for a manual app install. One of companyId or clientIds must be non-null, specifying the client(s)/company who will receive the specified content.
- [App Connections](https://docs.assembly.com/reference/app-connections.md)
- [List App Connections](https://docs.assembly.com/reference/list-app-connections.md): This endpoint lists all app connections for the specified manual app install within the workspace.
- [App Installs](https://docs.assembly.com/reference/app-installs.md)
- [List App Installs](https://docs.assembly.com/reference/list-app-installs.md): This endpoint lists all app installs within the workspace associated with this API Key.
Returns the apps in sorted order as displayed in the left navbar.
- [Create Notification](https://docs.assembly.com/reference/create-notification.md): Creates a notification in a workspace.
- [Delete Notification](https://docs.assembly.com/reference/delete-notification.md): This API endpoint deletes a notification.
- [Notifications](https://docs.assembly.com/reference/notifications.md)
- [List Notifications](https://docs.assembly.com/reference/list-notifications.md): Lists notifications for a workspace.
- [Mark Notification Read](https://docs.assembly.com/reference/mark-notification-read.md): This API endpoint marks a notification as read.
- [Mark Notification Unread](https://docs.assembly.com/reference/mark-notification-unread.md): This API endpoint marks a notification as unread.
- [Delete Task Comment](https://docs.assembly.com/reference/delete-task-comment.md): This API endpoint deletes a single comment in a task.
- [Task Comments](https://docs.assembly.com/reference/task-comments.md): This resource represents a task comment that is created in a task within a workspace.
- [List Task Comments](https://docs.assembly.com/reference/list-task-comments.md): This API endpoint retrieves all task comments.
- [Retrieve Task Comment](https://docs.assembly.com/reference/retrieve-task-comments.md): This API endpoint retrieves a single comment in a task.
- [Task Templates](https://docs.assembly.com/reference/task-template.md): This resource represents a task template that is created within a workspace.
- [List Task Templates](https://docs.assembly.com/reference/list-task-templates.md): This API endpoint retrieves a list of task templates created in the workspace.
- [Retrieve Task Template](https://docs.assembly.com/reference/retrieve-task-template.md): This API endpoint retrieves a specific task template by its id.
- [Create Task](https://docs.assembly.com/reference/create-task.md): This API endpoint creates a task.
- [Delete Task](https://docs.assembly.com/reference/delete-task.md): This API endpoint deletes a specific task.
- [Tasks](https://docs.assembly.com/reference/tasks.md): This resource represents a task that is created within a workspace.
- [Retrieve Task](https://docs.assembly.com/reference/retrieve-task.md): This API endpoint retrieves a specific task by its id.
- [List Tasks](https://docs.assembly.com/reference/retrieve-tasks.md): This API endpoint retrieves tasks in a workspace.
- [Update Task](https://docs.assembly.com/reference/update-task.md): This API endpoint updates a task.
- [Events](https://docs.assembly.com/reference/webhooks-events.md)
- [Overview](https://docs.assembly.com/reference/webhooks-overview.md)
## Pages
- [Custom Apps](https://docs.assembly.com/custom-apps.md)