openapi: 3.0.3 info: title: 'Formalize Public API' description: "This documentation aims to provide all the information you need to work with our API.\n\n

Authenticating requests

\nTo authenticate requests, include an Authorization header with the value:
Bearer {YOUR_API_TOKEN}.\n\nYou can retrieve your token by visiting your Settings -> API and Integrations -> API Tokens -> New API Token.

\n\n

Sending requests

\nInclude an Accept header with the value application/json in all requests.
\n\n

Working with files

\nRead the files documentation to learn how to work with files.

\n\n

Rate limiting

\nYou are allowed to make 750 requests per minute.
\nYou are allowed to make 20.000 requests a day.\n" version: 1.0.0 servers: - url: 'https://api.formalize.com' tags: - name: Assets description: "A tracked company hardware asset like pc's and servers. Assets support hierarchical parent/child connections, letting you model a chain of linked assets and traverse it through the API." - name: 'Business Functions' description: 'An organizational unit or business area within the company, such as customer support, payment processing, or IT operations. Used to scope and organize other entities (processes, risks, controls, etc.) by which part of the business they belong to.' - name: Contracts description: "Contracts represent the formal agreements your organization has with customers, suppliers, and partners. They define the terms, obligations, and responsibilities that govern these relationships.

\nIn the platform, contracts can be structured by mapping parent and sub-contracts, reflecting how agreements are connected — such as master agreements with underlying service or project-specific contracts." - name: 'Control Frameworks' description: "A structured set of controls grouped under a compliance standard (e.g. ISO 27001, NIS2, DORA), used to operationalize that standard instead of tracking it in static documents or spreadsheets.

\nA framework holds two kinds of sub-resources:

\nRequirements: the regulatory, internal, or best-practice obligations imposed on the organization.

\nControls: the measures defined to satisfy those requirements, each of which is implemented and evidenced via a control response." - name: 'Control Statuses' description: 'A custom status label for controls.' - name: 'Control groups' description: 'A named collection of controls within a control framework, used purely for organization.' - name: Controls description: "A single, named measure within a control framework (e.g. AC-2.1) — the abstract \"you must do X\" from the standard.
\nImplemented and evidenced via a control response." - name: Customers description: 'A customer of your organization, optionally linked to your business functions. Like suppliers, a customer can have a contact person recorded on it, which questionnaires can be sent to in order to gather compliance information.' - name: 'Data Subject Requests' description: 'A request from an individual to access, correct, or delete their personal data (GDPR).' - name: Departments description: 'An organizational department within the company.' - name: Employees description: "Employees maps and registers information on your internal and external employees. Employees is a \nbit different than other resources, because it's tied to a physical person that can do some \nactions - meaning you can view the status of policies and questionnaires sent to that employee.\n

\nShould not be confused with Users." - name: Files description: "Generates a pre-signed upload URL for attaching a file to an entity.
\nNot a listable resource — call it to get a URL to upload to before referencing the file elsewhere.

\nSee the file upload guide for the full flow." - name: Folders description: 'A user-defined way to group entities into folders, for organization in the UI.' - name: Incidents description: 'A recorded security or compliance incident.' - name: Policies description: "A company policy document that employees are required to accept.
\nIncludes its published versions and the employee acceptances recorded against them." - name: Processes description: 'A documented internal business process. Like assets, processes support hierarchical parent/child connections, letting you model sub-processes and traverse the hierarchy through the API.' - name: Questionnaires description: 'A set of questions sent to suppliers or internal users for assessment.' - name: 'Recurring Tasks' description: "A template defining a recurring or structured task.
\nEach occurrence it generates over time is a task." - name: Roles description: 'A role assigned to employees and users, used to assign responsibility for entities by role rather than by individual.' - name: 'Subject Categories' description: 'A category of data subjects in a processing activity, e.g. customers or employees.' - name: Suppliers description: 'An external vendor or service provider, direct or indirect. Like customers, a supplier can have a contact person recorded on it, which questionnaires can be sent to in order to gather compliance information.' - name: Systems description: 'A tracked IT system or application. Systems can be linked to processing activities, connecting them to how the organization handles personal data under GDPR.' - name: 'Task Statuses' description: 'A custom status label for tasks.' - name: Tasks description: 'A work item assigned to users with a defined completion flow.' - name: Users description: "A person with a login account in Formalize.

\nShould not be confused with Employees." components: securitySchemes: default: type: http scheme: bearer description: null security: - default: [] paths: /public/v1/assets: get: summary: 'List assets' operationId: listAssets description: 'This endpoint allows you to get a paginated list of assets.' parameters: - in: query name: updated_after description: 'ISO 8601 timestamp. Only return assets with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' required: false schema: type: string description: 'ISO 8601 timestamp. Only return assets with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'The asset includes the service usage details and data security measures.' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/assets?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'The asset includes the service usage details and data security measures.' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the asset.' incremental_id: type: integer example: 1 description: 'The incremental ID of the asset.' name: type: string example: 'Cloud Service Subscription Asset' description: 'The name of the asset.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' description: type: string example: 'The asset includes the service usage details and data security measures.' description: 'The description of the asset.' nullable: true custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - incremental_id - name - created_at - updated_at - description pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/assets?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Assets post: summary: 'Create asset' operationId: createAsset description: 'This endpoint allows you to create a new asset.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'The asset includes the service usage details and data security measures.' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the asset.' incremental_id: type: integer example: 1 name: type: string example: 'Cloud Service Subscription Asset' description: 'The name of the asset.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' description: type: string example: 'The asset includes the service usage details and data security measures.' description: 'The description of the asset.' nullable: true custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name required: - id - name - created_at - updated_at - description 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Assets requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: 'Audit Report2' description: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Used to track the findings from compliance audits. Very important for business' custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string departments: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string required: - name '/public/v1/assets/{id}': get: summary: 'Get asset' operationId: getAsset description: 'This endpoint allows you to get a single asset.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'The asset includes the service usage details and data security measures.' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the asset.' incremental_id: type: integer example: 1 description: 'The incremental ID of the asset.' name: type: string example: 'Cloud Service Subscription Asset' description: 'The name of the asset.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' description: type: string example: 'The asset includes the service usage details and data security measures.' description: 'The description of the asset.' nullable: true custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name required: - id - incremental_id - name - created_at - updated_at - description 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Assets patch: summary: 'Update asset' operationId: updateAsset description: 'This endpoint allows you to update an asset.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'The asset includes the service usage details and data security measures.' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the asset.' incremental_id: type: integer example: 1 name: type: string example: 'Cloud Service Subscription Asset' description: 'The name of the asset.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' description: type: string example: 'The asset includes the service usage details and data security measures.' description: 'The description of the asset.' nullable: true custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name required: - id - name - created_at - updated_at - description 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Assets requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: '' example: 'Audit Report' description: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Used to track the findings from compliance audits. Very important for business' custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string departments: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string delete: summary: 'Delete asset' operationId: deleteAsset description: 'This endpoint allows you to delete an asset.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Assets parameters: - in: path name: id description: 'The UUID of the asset.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string /public/v1/business-functions: get: summary: 'List business functions' operationId: listBusinessFunctions description: 'This endpoint allows you to get a paginated list of business functions.' parameters: - in: query name: updated_after description: 'ISO 8601 timestamp. Only return business functions with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' required: false schema: type: string description: 'ISO 8601 timestamp. Only return business functions with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'Execute business function to onboard a new process. Very important for business' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/business-functions?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'Execute business function to onboard a new process. Very important for business' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the business function.' incremental_id: type: integer example: 1 description: 'The incremental ID of the business function.' name: type: string example: 'Business Function A' description: 'The name of the business function.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' description: type: string example: 'Execute business function to onboard a new process. Very important for business' description: 'The description of the business function.' nullable: true folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - incremental_id - name - created_at - updated_at - description pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/business-functions?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - 'Business Functions' post: summary: 'Create business function' operationId: createBusinessFunction description: 'This endpoint allows you to create a new business function.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'Execute business function to onboard a new process. Very important for business' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the business function.' incremental_id: type: integer example: 1 name: type: string example: 'Business Function A' description: 'The name of the business function.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' description: type: string example: 'Execute business function to onboard a new process. Very important for business' description: 'The description of the business function.' nullable: true folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - created_at - updated_at - description 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - 'Business Functions' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: 'Business Function A' description: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Execute business function to onboard a new process. Very important for business' folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string departments: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - name '/public/v1/business-functions/{id}': get: summary: 'Get business function' operationId: getBusinessFunction description: 'This endpoint allows you to get a single business function.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'Execute business function to onboard a new process. Very important for business' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the business function.' incremental_id: type: integer example: 1 description: 'The incremental ID of the business function.' name: type: string example: 'Business Function A' description: 'The name of the business function.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' description: type: string example: 'Execute business function to onboard a new process. Very important for business' description: 'The description of the business function.' nullable: true folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - incremental_id - name - created_at - updated_at - description 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - 'Business Functions' patch: summary: 'Update business function' operationId: updateBusinessFunction description: 'This endpoint allows you to update a business function.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'Execute business function to onboard a new process. Very important for business' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the business function.' incremental_id: type: integer example: 1 name: type: string example: 'Business Function A' description: 'The name of the business function.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' description: type: string example: 'Execute business function to onboard a new process. Very important for business' description: 'The description of the business function.' nullable: true folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - created_at - updated_at - description 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - 'Business Functions' requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: '' example: 'Business Function A' description: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Execute business function to onboard a new process. Very important for business' folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string departments: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string delete: summary: 'Delete business function' operationId: deleteBusinessFunction description: 'This endpoint allows you to delete a business function.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - 'Business Functions' parameters: - in: path name: id description: 'The UUID of the business function.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string /public/v1/contracts: get: summary: 'List contracts' operationId: listContracts description: 'This endpoint allows you to get a paginated list of contracts.' parameters: - in: query name: updated_after description: 'ISO 8601 timestamp. Only return contracts with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' required: false schema: type: string description: 'ISO 8601 timestamp. Only return contracts with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'Execute contract to onboard a new process. Very important for business' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate parent_contracts: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' child_contracts: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' suppliers: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' customers: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/contracts?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'Execute contract to onboard a new process. Very important for business' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate parent_contracts: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' child_contracts: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' suppliers: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' customers: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the contract.' incremental_id: type: integer example: 1 description: 'The incremental ID of the contract.' name: type: string example: 'Contract A' description: 'The name of the contract.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' description: type: string example: 'Execute contract to onboard a new process. Very important for business' description: 'The description of the contract.' nullable: true custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate parent_contracts: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' child_contracts: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' suppliers: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' customers: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' required: - id - incremental_id - name - created_at - updated_at - description pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/contracts?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Contracts post: summary: 'Create contract' operationId: createContract description: 'This endpoint allows you to create a new contract.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'Execute contract to onboard a new process. Very important for business' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate parent_contracts: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' child_contracts: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' suppliers: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' customers: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the contract.' incremental_id: type: integer example: 1 name: type: string example: 'Contract A' description: 'The name of the contract.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' description: type: string example: 'Execute contract to onboard a new process. Very important for business' description: 'The description of the contract.' nullable: true custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id parent_contracts: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' required: - id - name child_contracts: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' required: - id - name departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name suppliers: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' required: - id - name customers: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' required: - id - name required: - id - name - created_at - updated_at - description 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Contracts requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: 'Contract A' description: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Execute contract to onboard a new process. Very important for business' custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string parent_contracts: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true child_contracts: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string departments: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string suppliers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true customers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true required: - name '/public/v1/contracts/{id}': get: summary: 'Get contract' operationId: getContract description: 'This endpoint allows you to get a single contract.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'Execute contract to onboard a new process. Very important for business' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate parent_contracts: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' child_contracts: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' suppliers: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' customers: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the contract.' incremental_id: type: integer example: 1 description: 'The incremental ID of the contract.' name: type: string example: 'Contract A' description: 'The name of the contract.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' description: type: string example: 'Execute contract to onboard a new process. Very important for business' description: 'The description of the contract.' nullable: true custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id parent_contracts: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' required: - id - incremental_id - name child_contracts: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' required: - id - incremental_id - name departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name suppliers: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' required: - id - incremental_id - name customers: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' required: - id - incremental_id - name required: - id - incremental_id - name - created_at - updated_at - description 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Contracts patch: summary: 'Update contract' operationId: updateContract description: 'This endpoint allows you to update a contract.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' description: 'Execute contract to onboard a new process. Very important for business' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate parent_contracts: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' child_contracts: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' suppliers: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' customers: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the contract.' incremental_id: type: integer example: 1 name: type: string example: 'Contract A' description: 'The name of the contract.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' description: type: string example: 'Execute contract to onboard a new process. Very important for business' description: 'The description of the contract.' nullable: true custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id parent_contracts: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' required: - id - name child_contracts: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' required: - id - name departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name suppliers: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' required: - id - name customers: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' required: - id - name required: - id - name - created_at - updated_at - description 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Contracts requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: '' example: 'Contract A' description: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Execute contract to onboard a new process. Very important for business' custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string parent_contracts: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true child_contracts: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true departments: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string suppliers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true customers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true delete: summary: 'Delete contract' operationId: deleteContract description: 'This endpoint allows you to delete a contract.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Contracts parameters: - in: path name: id description: 'The UUID of the contract.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string /public/v1/control-frameworks: get: summary: 'List control frameworks' operationId: listControlFrameworks description: 'This endpoint allows you to get a paginated list of control frameworks.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'ISO27001:2022' pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/control-frameworks?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'ISO27001:2022' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the control framework.' name: type: string example: 'ISO27001:2022' description: 'The name of the control framework.' required: - id - name pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/control-frameworks?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - 'Control Frameworks' post: summary: 'Create control framework' operationId: createControlFramework description: 'This endpoint allows you to create a control framework.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'ISO27001:2022' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'ISO27001:2022' tags: - 'Control Frameworks' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: 'ISO 27001:2013' required: - name '/public/v1/control-frameworks/{control_framework_id}': get: summary: 'Get a control framework' operationId: getAControlFramework description: 'This endpoint allows you to get a single control framework' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'ISO27001:2022' control_groups: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'ISO27001:2022' top_level_control_group_id: 2f883ab0-40bc-4410-918a-083f43a9f214 parent_control_group_id: ce5d3b18-65e4-4ef1-bf51-e18df7a7c89e prefix: '1' order: 0 full_identifier: '1' controls: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 control_groups: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'ISO27001:2022' top_level_control_group_id: 2f883ab0-40bc-4410-918a-083f43a9f214 parent_control_group_id: ce5d3b18-65e4-4ef1-bf51-e18df7a7c89e prefix: '1' order: 0 full_identifier: '1' controls: [] control_groups: [] properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'ISO27001:2022' control_groups: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'ISO27001:2022' top_level_control_group_id: 2f883ab0-40bc-4410-918a-083f43a9f214 parent_control_group_id: ce5d3b18-65e4-4ef1-bf51-e18df7a7c89e prefix: '1' order: 0 full_identifier: '1' controls: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 control_groups: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'ISO27001:2022' top_level_control_group_id: 2f883ab0-40bc-4410-918a-083f43a9f214 parent_control_group_id: ce5d3b18-65e4-4ef1-bf51-e18df7a7c89e prefix: '1' order: 0 full_identifier: '1' controls: [] control_groups: [] items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'ISO27001:2022' top_level_control_group_id: type: string example: 2f883ab0-40bc-4410-918a-083f43a9f214 parent_control_group_id: type: string example: ce5d3b18-65e4-4ef1-bf51-e18df7a7c89e prefix: type: string example: '1' order: type: integer example: 0 full_identifier: type: string example: '1' controls: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Control A' identifier: type: string example: 1.1.1 control_groups: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'ISO27001:2022' top_level_control_group_id: 2f883ab0-40bc-4410-918a-083f43a9f214 parent_control_group_id: ce5d3b18-65e4-4ef1-bf51-e18df7a7c89e prefix: '1' order: 0 full_identifier: '1' controls: [] control_groups: [] items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'ISO27001:2022' top_level_control_group_id: type: string example: 2f883ab0-40bc-4410-918a-083f43a9f214 parent_control_group_id: type: string example: ce5d3b18-65e4-4ef1-bf51-e18df7a7c89e prefix: type: string example: '1' order: type: integer example: 0 full_identifier: type: string example: '1' controls: type: array example: [] control_groups: type: array example: [] tags: - 'Control Frameworks' patch: summary: 'Update control framework' operationId: updateControlFramework description: 'This endpoint allows you to update a control framework.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'ISO27001:2022' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'ISO27001:2022' 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - 'Control Frameworks' requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: '' example: 'ISO 27001:2013' order: type: integer description: '' example: 1 delete: summary: 'Delete a control framework' operationId: deleteAControlFramework description: 'This endpoint allows you to delete a control framework.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - 'Control Frameworks' parameters: - in: path name: control_framework_id description: 'The UUID of the control framework.' example: 44a534e1-c455-4e2c-816a-66197fcddd92 required: true schema: type: string /public/v1/control-statuses: get: summary: 'List control statuses' operationId: listControlStatuses description: 'This endpoint allows you to get a paginated list of control statuses.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: Implementing category: PARTIALLY_IMPLEMENTED risk_effect_percent: 50 pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/control-statuses?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: Implementing category: PARTIALLY_IMPLEMENTED risk_effect_percent: 50 items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the control status.' name: type: string example: Implementing description: 'The name of the control status.' category: type: string example: PARTIALLY_IMPLEMENTED risk_effect_percent: type: integer example: 50 required: - id - name pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/control-statuses?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - 'Control Statuses' '/public/v1/control-frameworks/{control_framework_id}/control-groups': get: summary: 'List control groups for a framework' operationId: listControlGroupsForAFramework description: 'This endpoint allows you to get a paginated list of control groups of a framework.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'ISO27001:2022' top_level_control_group_id: 2f883ab0-40bc-4410-918a-083f43a9f214 parent_control_group_id: ce5d3b18-65e4-4ef1-bf51-e18df7a7c89e prefix: '1' order: 0 full_identifier: '1' pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/control-frameworks/9940ebb1-25db-41d8-9650-a9f39ee55d1a/control-groups?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'ISO27001:2022' top_level_control_group_id: 2f883ab0-40bc-4410-918a-083f43a9f214 parent_control_group_id: ce5d3b18-65e4-4ef1-bf51-e18df7a7c89e prefix: '1' order: 0 full_identifier: '1' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the control group.' name: type: string example: 'ISO27001:2022' description: 'The name of the control group.' top_level_control_group_id: type: string example: 2f883ab0-40bc-4410-918a-083f43a9f214 description: 'The UUID of the top level control group.' parent_control_group_id: type: string example: ce5d3b18-65e4-4ef1-bf51-e18df7a7c89e description: 'The UUID of the immediate parent group.' prefix: type: string example: '1' description: 'The prefix of the control group.' order: type: integer example: 0 description: 'The order of the control group.' full_identifier: type: string example: '1' description: 'The full identifier of the control group.' required: - id - name - top_level_control_group_id - parent_control_group_id - prefix - order - full_identifier pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/control-frameworks/9940ebb1-25db-41d8-9650-a9f39ee55d1a/control-groups?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - 'Control groups' post: summary: 'Create control group' operationId: createControlGroup description: 'This endpoint allows you to create a single control group.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'ISO27001:2022' top_level_control_group_id: 2f883ab0-40bc-4410-918a-083f43a9f214 parent_control_group_id: ce5d3b18-65e4-4ef1-bf51-e18df7a7c89e prefix: '1' order: 0 full_identifier: '1' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the control group.' name: type: string example: 'ISO27001:2022' description: 'The name of the control group.' top_level_control_group_id: type: string example: 2f883ab0-40bc-4410-918a-083f43a9f214 description: 'The UUID of the top level control group.' parent_control_group_id: type: string example: ce5d3b18-65e4-4ef1-bf51-e18df7a7c89e description: 'The UUID of the immediate parent group.' prefix: type: string example: '1' description: 'The prefix of the control group.' order: type: integer example: 0 description: 'The order of the control group.' full_identifier: type: string example: '1' description: 'The full identifier of the control group.' required: - id - name - top_level_control_group_id - parent_control_group_id - prefix - order - full_identifier 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - 'Control groups' requestBody: required: true content: application/json: schema: type: object properties: parent_control_group_id: type: string description: '' example: d19052f4-fa1b-4776-8895-ed22ec2e9ad9 prefix: type: string description: '' example: '1' order: type: integer description: '' example: 0 name: type: string description: '' example: 'Management direction for information security' required: - prefix - order - name parameters: - in: path name: control_framework_id description: 'The ID of the control framework.' example: ecEeEDAe-FFdE-AdAA-cDee-ABadEbafdDdC required: true schema: type: string '/public/v1/control-frameworks/{control_framework_id}/control-groups/{control_group_id}': patch: summary: 'Update control group' operationId: updateControlGroup description: 'This endpoint allows you to update a single control group.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'ISO27001:2022' top_level_control_group_id: 2f883ab0-40bc-4410-918a-083f43a9f214 parent_control_group_id: ce5d3b18-65e4-4ef1-bf51-e18df7a7c89e prefix: '1' order: 0 full_identifier: '1' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the control group.' name: type: string example: 'ISO27001:2022' description: 'The name of the control group.' top_level_control_group_id: type: string example: 2f883ab0-40bc-4410-918a-083f43a9f214 description: 'The UUID of the top level control group.' parent_control_group_id: type: string example: ce5d3b18-65e4-4ef1-bf51-e18df7a7c89e description: 'The UUID of the immediate parent group.' prefix: type: string example: '1' description: 'The prefix of the control group.' order: type: integer example: 0 description: 'The order of the control group.' full_identifier: type: string example: '1' description: 'The full identifier of the control group.' required: - id - name - top_level_control_group_id - parent_control_group_id - prefix - order - full_identifier 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - 'Control groups' requestBody: required: false content: application/json: schema: type: object properties: prefix: type: string description: '' example: '1' order: type: integer description: '' example: 0 name: type: string description: '' example: 'Management direction for information security' delete: summary: 'Delete a control group' operationId: deleteAControlGroup description: 'This endpoint allows you to delete a control group.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - 'Control groups' parameters: - in: path name: control_framework_id description: 'The UUID of the control framework' example: 91b11456-b424-4aab-bacf-47f15cccfd45 required: true schema: type: string - in: path name: control_group_id description: 'The UUID of the control group to update' example: a6d4fee2-6de4-440c-818a-06019b293bae required: true schema: type: string '/public/v1/control-frameworks/{control_framework_id}/controls/{control_id}': get: summary: 'Get control (Deprecated)' operationId: getControlDeprecated description: 'This endpoint allows you to get a single control.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 description: 'This is a nice HTML answer' documentation: 'This is a nice HTML answer' applicability: NOT_APPLICABLE status: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: Implementing category: PARTIALLY_IMPLEMENTED risk_effect_percent: 50 files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' customers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' incidents: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' assets: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' business_functions: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' contracts: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' processes: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf controls: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the control.' name: type: string example: 'Control A' description: 'The name of the control.' identifier: type: string example: 1.1.1 description: 'The identifier of the control.' description: type: string example: 'This is a nice HTML answer' description: 'Description of the control.' nullable: true documentation: type: string example: 'This is a nice HTML answer' description: 'Documentation of the control.' nullable: true applicability: type: string example: NOT_APPLICABLE description: 'Applicability of the control.' enum: - APPLICABLE - NOT_APPLICABLE status: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: Implementing category: type: string example: PARTIALLY_IMPLEMENTED risk_effect_percent: type: integer example: 50 required: - id - name description: 'The status of the control.' files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' description: 'Attached files to the control.' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' required: - id - name customers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' required: - id - name incidents: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Incident A' required: - id - name assets: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Cloud Service Subscription Asset' required: - id - name business_functions: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Business Function A' required: - id - name contracts: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' required: - id - name processes: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Process A' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name controls: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Control A' identifier: type: string example: 1.1.1 required: - id - name - identifier custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - identifier - description - documentation - applicability - status - files 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 description: 'The status of the control.' title: type: string example: 'Entity not found' required: - status tags: - Controls deprecated: true patch: summary: 'Update control (Deprecated)' operationId: updateControlDeprecated description: 'This endpoint allows you to update a control.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 description: 'This is a nice HTML answer' documentation: 'This is a nice HTML answer' applicability: NOT_APPLICABLE status: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: Implementing category: PARTIALLY_IMPLEMENTED risk_effect_percent: 50 files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' customers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' incidents: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' assets: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' business_functions: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' contracts: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' processes: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf controls: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the control.' name: type: string example: 'Control A' description: 'The name of the control.' identifier: type: string example: 1.1.1 description: type: string example: 'This is a nice HTML answer' description: 'The description of the control.' nullable: true documentation: type: string example: 'This is a nice HTML answer' applicability: type: string example: NOT_APPLICABLE status: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: Implementing category: type: string example: PARTIALLY_IMPLEMENTED risk_effect_percent: type: integer example: 50 required: - id - name files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' required: - id - name customers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' required: - id - name incidents: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Incident A' required: - id - name assets: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Cloud Service Subscription Asset' required: - id - name business_functions: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Business Function A' required: - id - name contracts: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' required: - id - name processes: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Process A' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name controls: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Control A' identifier: type: string example: 1.1.1 required: - id - name custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - description 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Controls deprecated: true requestBody: required: false content: application/json: schema: type: object properties: description: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Execute control framework to onboard a new process. Very important for business' documentation: type: string description: 'Must be at least 0 characters. Must not be greater than 10485760 characters.' example: yisdlfl nullable: true applicability: type: string description: 'The applicability of the control' example: APPLICABLE enum: - APPLICABLE - NOT_APPLICABLE status: type: string description: 'UUID of the control status' example: 9940ebb2-25db-41d8-9650-a9f39ee55d1a responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string files: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string suppliers: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string customers: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string incidents: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string assets: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string business_functions: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string contracts: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string processes: type: object description: '' example: null properties: {} controls: type: object description: '' example: null properties: {} custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: {} parameters: - in: path name: control_framework_id description: 'The UUID of the control framework' example: 2633e7d4-f690-481d-acae-4bcb5dd2973a required: true schema: type: string - in: path name: control_id description: 'The UUID of the control' example: af5a4da9-dc42-4a8d-9cf9-9b35666be249 required: true schema: type: string '/public/v1/control-frameworks/{control_framework_id}/controls': get: summary: 'List controls for framework (Deprecated)' operationId: listControlsForFrameworkDeprecated description: 'This endpoint allows you to get a paginated list of controls for a framework.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/control-frameworks/9940ebb1-25db-41d8-9650-a9f39ee55d1a/controls?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the control.' name: type: string example: 'Control A' description: 'The name of the control.' identifier: type: string example: 1.1.1 required: - id - name pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/control-frameworks/9940ebb1-25db-41d8-9650-a9f39ee55d1a/controls?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Controls deprecated: true parameters: - in: path name: control_framework_id description: 'The UUID of the control framework' example: libero required: true schema: type: string '/public/v1/control-frameworks/{control_framework_id}/control-groups/{control_group_id}/controls/{control_id}': get: summary: 'Get control' operationId: getControl description: 'This endpoint allows you to get a single control.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 description: 'This is a nice HTML answer' documentation: 'This is a nice HTML answer' applicability: NOT_APPLICABLE status: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: Implementing category: PARTIALLY_IMPLEMENTED risk_effect_percent: 50 files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' customers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' incidents: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' assets: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' business_functions: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' contracts: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' processes: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf controls: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the control.' name: type: string example: 'Control A' description: 'The name of the control.' identifier: type: string example: 1.1.1 description: 'The identifier of the control.' description: type: string example: 'This is a nice HTML answer' description: 'Description of the control.' nullable: true documentation: type: string example: 'This is a nice HTML answer' description: 'Documentation of the control.' nullable: true applicability: type: string example: NOT_APPLICABLE description: 'Applicability of the control.' enum: - APPLICABLE - NOT_APPLICABLE status: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: Implementing category: type: string example: PARTIALLY_IMPLEMENTED risk_effect_percent: type: integer example: 50 required: - id - name description: 'The status of the control.' files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' description: 'Attached files to the control.' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' required: - id - name customers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' required: - id - name incidents: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Incident A' required: - id - name assets: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Cloud Service Subscription Asset' required: - id - name business_functions: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Business Function A' required: - id - name contracts: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' required: - id - name processes: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Process A' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name controls: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Control A' identifier: type: string example: 1.1.1 required: - id - name - identifier custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - identifier - description - documentation - applicability - status - files 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 description: 'The status of the control.' title: type: string example: 'Entity not found' required: - status tags: - Controls patch: summary: 'Update control' operationId: updateControl description: 'This endpoint allows you to update a control.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 description: 'This is a nice HTML answer' documentation: 'This is a nice HTML answer' applicability: NOT_APPLICABLE status: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: Implementing category: PARTIALLY_IMPLEMENTED risk_effect_percent: 50 files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' customers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' incidents: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' assets: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' business_functions: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' contracts: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' processes: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf controls: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the control.' name: type: string example: 'Control A' description: 'The name of the control.' identifier: type: string example: 1.1.1 description: type: string example: 'This is a nice HTML answer' description: 'The description of the control.' nullable: true documentation: type: string example: 'This is a nice HTML answer' applicability: type: string example: NOT_APPLICABLE status: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: Implementing category: type: string example: PARTIALLY_IMPLEMENTED risk_effect_percent: type: integer example: 50 required: - id - name files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' required: - id - name customers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' required: - id - name incidents: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Incident A' required: - id - name assets: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Cloud Service Subscription Asset' required: - id - name business_functions: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Business Function A' required: - id - name contracts: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' required: - id - name processes: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Process A' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name controls: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Control A' identifier: type: string example: 1.1.1 required: - id - name custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - description 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Controls requestBody: required: false content: application/json: schema: type: object properties: description: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Execute control framework to onboard a new process. Very important for business' documentation: type: string description: 'Must be at least 0 characters. Must not be greater than 10485760 characters.' example: yisdlfl nullable: true applicability: type: string description: 'The applicability of the control' example: APPLICABLE enum: - APPLICABLE - NOT_APPLICABLE status: type: string description: 'UUID of the control status' example: 9940ebb2-25db-41d8-9650-a9f39ee55d1a responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string files: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string suppliers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true customers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true incidents: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true assets: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true business_functions: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true contracts: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true processes: type: object description: '' example: null properties: {} controls: type: object description: '' example: null properties: {} custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string delete: summary: 'Delete a control' operationId: deleteAControl description: 'This endpoint allows you to delete a control.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Controls parameters: - in: path name: control_framework_id description: 'The UUID of the control framework' example: 2633e7d4-f690-481d-acae-4bcb5dd2973a required: true schema: type: string - in: path name: control_group_id description: 'The ID of the control group.' example: ecEeEDAe-FFdE-AdAA-cDee-ABadEbafdDdC required: true schema: type: string - in: path name: control_id description: 'The UUID of the control' example: af5a4da9-dc42-4a8d-9cf9-9b35666be249 required: true schema: type: string '/public/v1/control-frameworks/{control_framework_id}/control-groups/{control_group_id}/controls': get: summary: 'List controls for control group' operationId: listControlsForControlGroup description: 'This endpoint allows you to get a paginated list of controls for a control group within a framework.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/control-frameworks/9940ebb1-25db-41d8-9650-a9f39ee55d1a/control-groups/9940ebb1-25db-41d8-9650-a9f39ee55d1a/controls?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the control.' name: type: string example: 'Control A' description: 'The name of the control.' identifier: type: string example: 1.1.1 required: - id - name pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/control-frameworks/9940ebb1-25db-41d8-9650-a9f39ee55d1a/control-groups/9940ebb1-25db-41d8-9650-a9f39ee55d1a/controls?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Controls post: summary: 'Create control' operationId: createControl description: 'This endpoint allows you to create a single control.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 description: 'This is a nice HTML answer' documentation: 'This is a nice HTML answer' applicability: NOT_APPLICABLE status: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: Implementing category: PARTIALLY_IMPLEMENTED risk_effect_percent: 50 files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' customers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' incidents: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' assets: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' business_functions: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' contracts: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' processes: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf controls: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Control A' identifier: type: string example: 1.1.1 description: type: string example: 'This is a nice HTML answer' documentation: type: string example: 'This is a nice HTML answer' applicability: type: string example: NOT_APPLICABLE status: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: Implementing category: type: string example: PARTIALLY_IMPLEMENTED risk_effect_percent: type: integer example: 50 files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' customers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' incidents: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Incident A' assets: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Cloud Service Subscription Asset' business_functions: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Business Function A' contracts: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' processes: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Process A' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string controls: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Control A' identifier: type: string example: 1.1.1 custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string tags: - Controls requestBody: required: true content: application/json: schema: type: object properties: order: type: integer description: '' example: 1 name: type: string description: '' example: 'Management direction for information security' identifier: type: string description: '' example: '1' description: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Lorem ipsum' custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero applicability: type: string description: '' example: APPLICABLE enum: - APPLICABLE - NOT_APPLICABLE suppliers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true systems: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true incidents: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true customers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true assets: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true business_functions: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true contracts: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string controls: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true processes: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true required: - order - name - identifier parameters: - in: path name: control_framework_id description: 'The UUID of the control framework' example: libero required: true schema: type: string - in: path name: control_group_id description: 'The ID of the control group.' example: ecEeEDAe-FFdE-AdAA-cDee-ABadEbafdDdC required: true schema: type: string /public/v1/customers: get: summary: 'List customers' operationId: listCustomers description: 'This endpoint allows you to get a paginated list of customers.' parameters: - in: query name: updated_after description: 'ISO 8601 timestamp. Only return customers with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' required: false schema: type: string description: 'ISO 8601 timestamp. Only return customers with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' address: 'Kanikkegade 4, Aarhus C' organization_number: DK12345678 country: DNK notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' contact_person: first_name: John last_name: Doe phone_ext: '+45' phone_number: '11223344' email: support@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/customers?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' address: 'Kanikkegade 4, Aarhus C' organization_number: DK12345678 country: DNK notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' contact_person: first_name: John last_name: Doe phone_ext: '+45' phone_number: '11223344' email: support@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the customer.' incremental_id: type: integer example: 1 description: 'The incremental ID of the customer.' name: type: string example: 'Customer A' description: 'The name of the customer.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' address: type: string example: 'Kanikkegade 4, Aarhus C' description: 'The address of the customer.' nullable: true organization_number: type: string example: DK12345678 description: 'The organization number of the customer.' nullable: true country: type: string example: DNK description: 'The country of the customer as ISO 3166 Alpha-3 code' nullable: true notes: type: string example: 'This is a mega cool note' description: 'The notes related to the customer.' nullable: true notes_files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' description: 'The files in notes.' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' contact_person: type: object properties: first_name: type: string example: John description: 'The first name of the contact person.' nullable: true last_name: type: string example: Doe description: 'The last name of the contact person.' nullable: true phone_ext: type: string example: '+45' description: 'The phone extension of the contact person.' nullable: true phone_number: type: string example: '11223344' description: 'The phone number of the contact person.' nullable: true email: type: string example: support@formalize.com description: 'The email of the contact person.' nullable: true required: - first_name - last_name - phone_ext - phone_number - email description: 'The contact person from the customer.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - incremental_id - name - created_at - updated_at - address - organization_number - country - notes - notes_files - contact_person pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/customers?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Customers post: summary: 'Create customer' operationId: createCustomer description: 'This endpoint allows you to create a new customer.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' address: 'Kanikkegade 4, Aarhus C' organization_number: DK12345678 country: DNK notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' contact_person: first_name: John last_name: Doe phone_ext: '+45' phone_number: '11223344' email: support@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the customer.' incremental_id: type: integer example: 1 name: type: string example: 'Customer A' description: 'The name of the customer.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' address: type: string example: 'Kanikkegade 4, Aarhus C' description: 'The address of the customer.' nullable: true organization_number: type: string example: DK12345678 description: 'The organization number of the customer.' nullable: true country: type: string example: DNK description: 'The country of the customer as ISO 3166 Alpha-3 code' nullable: true notes: type: string example: 'This is a mega cool note' description: 'The notes related to the customer.' nullable: true notes_files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' description: 'The files in notes.' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id - name contact_person: type: object properties: first_name: type: string example: John description: 'The first name of the contact person.' nullable: true last_name: type: string example: Doe description: 'The last name of the contact person.' nullable: true phone_ext: type: string example: '+45' description: 'The phone extension of the contact person, defined by E.164 format' nullable: true phone_number: type: string example: '11223344' description: 'The phone number of the contact person, , defined by E.164 format' nullable: true email: type: string example: support@formalize.com description: 'The email of the contact person.' nullable: true required: - first_name - last_name - phone_ext - phone_number - email description: 'The contact person from the customer.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - created_at - updated_at - address - organization_number - country - notes - notes_files - contact_person 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Customers requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: 'Google Inc.' address: type: string description: '' example: 'Kannikegade 4, 1, 8000 Aarhus C' organization_number: type: string description: '' example: DK42045136 country: type: string description: 'ISO 3166 Alpha-3 code' example: DNK notes: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Very important for business' notes_files: type: array description: 'Files for notes regarding customers' example: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3ba items: type: string contact_person: type: object description: '' example: null properties: first_name: type: string description: '' example: Magnus last_name: type: string description: '' example: Boye phone_ext: type: string description: 'Phone extension defined by E.164' example: '+45' phone_number: type: integer description: 'Phone number defined by E.164.' example: '25932812' email: type: string description: '' example: support@customer.com folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - name '/public/v1/customers/{id}': get: summary: 'Get customer' operationId: getCustomer description: 'This endpoint allows you to get a single customer.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' address: 'Kanikkegade 4, Aarhus C' organization_number: DK12345678 country: DNK notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' contact_person: first_name: John last_name: Doe phone_ext: '+45' phone_number: '11223344' email: support@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the customer.' incremental_id: type: integer example: 1 description: 'The incremental ID of the customer.' name: type: string example: 'Customer A' description: 'The name of the customer.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' address: type: string example: 'Kanikkegade 4, Aarhus C' description: 'The address of the customer.' nullable: true organization_number: type: string example: DK12345678 description: 'The organization number of the customer.' nullable: true country: type: string example: DNK description: 'The country of the customer as ISO 3166 Alpha-3 code' nullable: true notes: type: string example: 'This is a mega cool note' description: 'The notes related to the customer.' nullable: true notes_files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' description: 'The files in notes.' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id - name contact_person: type: object properties: first_name: type: string example: John description: 'The first name of the contact person.' nullable: true last_name: type: string example: Doe description: 'The last name of the contact person.' nullable: true phone_ext: type: string example: '+45' description: 'The phone extension of the contact person, defined by E.164 format' nullable: true phone_number: type: string example: '11223344' description: 'The phone number of the contact person, defined by E.164 format' nullable: true email: type: string example: support@formalize.com description: 'The email of the contact person.' nullable: true required: - first_name - last_name - phone_ext - phone_number - email description: 'The contact person from the customer.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - incremental_id - name - created_at - updated_at - address - organization_number - country - notes - notes_files - contact_person 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Customers patch: summary: 'Update customer' operationId: updateCustomer description: 'This endpoint allows you to update a customer.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' address: 'Kanikkegade 4, Aarhus C' organization_number: DK12345678 country: DNK notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' contact_person: first_name: John last_name: Doe phone_ext: '+45' phone_number: '11223344' email: support@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the customer.' incremental_id: type: integer example: 1 name: type: string example: 'Customer A' description: 'The name of the customer.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' address: type: string example: 'Kanikkegade 4, Aarhus C' description: 'The address of the customer.' nullable: true organization_number: type: string example: DK12345678 description: 'The organization number of the customer.' nullable: true country: type: string example: DNK description: 'The country of the customer as ISO 3166 Alpha-3 code' nullable: true notes: type: string example: 'This is a mega cool note' description: 'The notes related to the customer.' nullable: true notes_files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' description: 'The files in notes.' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id - name contact_person: type: object properties: first_name: type: string example: John description: 'The first name of the contact person.' nullable: true last_name: type: string example: Doe description: 'The last name of the contact person.' nullable: true phone_ext: type: string example: '+45' description: 'The phone extension of the contact person.' nullable: true phone_number: type: string example: '11223344' description: 'The phone number of the contact person.' nullable: true email: type: string example: support@formalize.com description: 'The email of the contact person.' nullable: true required: - first_name - last_name - phone_ext - phone_number - email description: 'The contact person from the customer.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - created_at - updated_at - address - organization_number - country - notes - notes_files - contact_person 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Customers requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: '' example: 'Google Inc.' address: type: string description: '' example: 'Kannikegade 4, 1, 8000 Aarhus C' organization_number: type: string description: '' example: DK42045136 country: type: string description: 'ISO 3166 Alpha-3 code' example: DNK notes: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Very important for business' notes_files: type: array description: 'Files for notes regarding customers' example: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3ba items: type: string contact_person: type: object description: '' example: null properties: first_name: type: string description: '' example: Magnus last_name: type: string description: '' example: Boye phone_ext: type: string description: 'Phone extension defined by E.164' example: '+45' phone_number: type: integer description: 'Phone number defined by E.164.' example: '25932812' email: type: string description: '' example: support@customer.com folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string delete: summary: 'Delete customer' operationId: deleteCustomer description: 'This endpoint allows you to delete a customer.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Customers parameters: - in: path name: id description: 'The UUID of the customer.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string /public/v1/data-subject-requests: get: summary: 'List data subject requests' operationId: listDataSubjectRequests description: 'This endpoint allows you to get a paginated list of data subject requests.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf public_user: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com subject_categories: - id: 7dfb66b8-9799-4a09-b5e2-32f2b8c79a0a name: Employees - id: 4b22442-dedf-48e0-b8b3-83ef4b1f40a0 name: Customers request_types: - DATA_PROCESSING_OBJECTION - ERASURE_REQUEST received_at: '2024-01-01T06:00:00.000000Z' messages: - id: 9e598f59-5571-4768-b559-3f7a42d2d3ar message: 'A message has been sent.' files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' - id: f6baca27-cbf4-47d4-8470-b8ea3e7f8ea9 name: file2.pdf url: 'https://generated-download-url.com/file2.pdf' user: id: 970f8f55-6518-48f8-8e95-e0ba580483e7 first_name: Hudson last_name: Underwood email: allyson-garrett@me.com status: OPEN custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/data-subject-requests?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf public_user: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com subject_categories: - id: 7dfb66b8-9799-4a09-b5e2-32f2b8c79a0a name: Employees - id: 4b22442-dedf-48e0-b8b3-83ef4b1f40a0 name: Customers request_types: - DATA_PROCESSING_OBJECTION - ERASURE_REQUEST received_at: '2024-01-01T06:00:00.000000Z' messages: - id: 9e598f59-5571-4768-b559-3f7a42d2d3ar message: 'A message has been sent.' files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' - id: f6baca27-cbf4-47d4-8470-b8ea3e7f8ea9 name: file2.pdf url: 'https://generated-download-url.com/file2.pdf' user: id: 970f8f55-6518-48f8-8e95-e0ba580483e7 first_name: Hudson last_name: Underwood email: allyson-garrett@me.com status: OPEN custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the Data Subject Request.' incremental_id: type: integer example: 1 description: 'The incremental ID of the data subject request.' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string public_user: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John description: 'The first name of the public user.' nullable: true last_name: type: string example: Doe description: 'The last name of the public user.' nullable: true email: type: string example: john.doe@formalize.com description: 'The email of the public user.' required: - first_name - last_name description: 'The public user who created the data subject request.' subject_categories: type: array example: - id: 7dfb66b8-9799-4a09-b5e2-32f2b8c79a0a name: Employees - id: 4b22442-dedf-48e0-b8b3-83ef4b1f40a0 name: Customers description: 'The list of subject categories that the data subject request belongs to.' items: type: object properties: id: type: string example: 7dfb66b8-9799-4a09-b5e2-32f2b8c79a0a name: type: string example: Employees request_types: type: array example: - DATA_PROCESSING_OBJECTION - ERASURE_REQUEST description: 'The list of request types that the data subject request belongs to.' items: type: string received_at: type: string example: '2024-01-01T06:00:00.000000Z' messages: type: array example: - id: 9e598f59-5571-4768-b559-3f7a42d2d3ar message: 'A message has been sent.' files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' - id: f6baca27-cbf4-47d4-8470-b8ea3e7f8ea9 name: file2.pdf url: 'https://generated-download-url.com/file2.pdf' user: id: 970f8f55-6518-48f8-8e95-e0ba580483e7 first_name: Hudson last_name: Underwood email: allyson-garrett@me.com items: type: object properties: id: type: string example: 9e598f59-5571-4768-b559-3f7a42d2d3ar message: type: string example: 'A message has been sent.' files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' - id: f6baca27-cbf4-47d4-8470-b8ea3e7f8ea9 name: file2.pdf url: 'https://generated-download-url.com/file2.pdf' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' user: type: object properties: id: type: string example: 970f8f55-6518-48f8-8e95-e0ba580483e7 first_name: type: string example: Hudson last_name: type: string example: Underwood email: type: string example: allyson-garrett@me.com status: type: string example: OPEN custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } required: - id - incremental_id - public_user - subject_categories - request_types pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/data-subject-requests?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - 'Data Subject Requests' post: summary: 'Create data subject request' operationId: createDataSubjectRequest description: 'This endpoint allows you to get a single data subject request.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf public_user: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com subject_categories: - id: 7dfb66b8-9799-4a09-b5e2-32f2b8c79a0a name: Employees - id: 4b22442-dedf-48e0-b8b3-83ef4b1f40a0 name: Customers request_types: - DATA_PROCESSING_OBJECTION - ERASURE_REQUEST received_at: '2024-01-01T06:00:00.000000Z' messages: - id: 9e598f59-5571-4768-b559-3f7a42d2d3ar message: 'A message has been sent.' files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' - id: f6baca27-cbf4-47d4-8470-b8ea3e7f8ea9 name: file2.pdf url: 'https://generated-download-url.com/file2.pdf' user: id: 970f8f55-6518-48f8-8e95-e0ba580483e7 first_name: Hudson last_name: Underwood email: allyson-garrett@me.com status: OPEN custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the Data Subject Request.' incremental_id: type: integer example: 1 connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string public_user: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John description: 'The first name of the public user.' nullable: true last_name: type: string example: Doe description: 'The last name of the public user.' nullable: true email: type: string example: john.doe@formalize.com description: 'The email of the public user.' required: - id - first_name - last_name description: 'The public user who created the data subject request.' subject_categories: type: array example: - id: 7dfb66b8-9799-4a09-b5e2-32f2b8c79a0a name: Employees - id: 4b22442-dedf-48e0-b8b3-83ef4b1f40a0 name: Customers description: 'The list of subject categories that the data subject request belongs to.' items: type: object properties: id: type: string example: 7dfb66b8-9799-4a09-b5e2-32f2b8c79a0a name: type: string example: Employees required: - id request_types: type: array example: - DATA_PROCESSING_OBJECTION - ERASURE_REQUEST description: 'The list of request types that the data subject request belongs to.' items: type: string received_at: type: string example: '2024-01-01T06:00:00.000000Z' messages: type: array example: - id: 9e598f59-5571-4768-b559-3f7a42d2d3ar message: 'A message has been sent.' files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' - id: f6baca27-cbf4-47d4-8470-b8ea3e7f8ea9 name: file2.pdf url: 'https://generated-download-url.com/file2.pdf' user: id: 970f8f55-6518-48f8-8e95-e0ba580483e7 first_name: Hudson last_name: Underwood email: allyson-garrett@me.com items: type: object properties: id: type: string example: 9e598f59-5571-4768-b559-3f7a42d2d3ar message: type: string example: 'A message has been sent.' files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' - id: f6baca27-cbf4-47d4-8470-b8ea3e7f8ea9 name: file2.pdf url: 'https://generated-download-url.com/file2.pdf' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id user: type: object properties: id: type: string example: 970f8f55-6518-48f8-8e95-e0ba580483e7 first_name: type: string example: Hudson last_name: type: string example: Underwood email: type: string example: allyson-garrett@me.com required: - id required: - id status: type: string example: OPEN custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' required: - id - public_user - subject_categories - request_types tags: - 'Data Subject Requests' requestBody: required: true content: application/json: schema: type: object properties: public_user: type: object description: '' example: first_name: John last_name: Doe email: johndoe@example.com properties: first_name: type: string description: '' example: John last_name: type: string description: '' example: Doe email: type: string description: '' example: John@doe.com required: - first_name - last_name received_at: type: date description: '' example: '2024-01-01T06:00:00+00:00' subject_categories: type: array description: '' example: - f94c4ca0-4e2c-4eee-8d26-b0602529be43 - 2be80aad-2ba4-4e7f-919f-172316aac447 - 8c208f14-636b-4101-ac82-2eb893040bdb items: type: string request_types: type: string description: '' example: ACCESS_REQUEST enum: - ACCESS_REQUEST - DATA_PORTABILITY_REQUEST - RECTIFICATION_REQUEST - ERASURE_REQUEST - DATA_PROCESSING_OBJECTION - PROCESSING_RESTRICTION_REQUEST - AUTOMATED_DECISION_MAKING_OBJECTION locale: type: string description: 'Language Code (ISO 639-1)' example: en custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero required: - key - value connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - public_user - received_at - subject_categories - request_types - locale '/public/v1/data-subject-requests/{id}': get: summary: 'Get data subject request' operationId: getDataSubjectRequest description: 'This endpoint allows you to get a single data subject request.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf public_user: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com subject_categories: - id: 7dfb66b8-9799-4a09-b5e2-32f2b8c79a0a name: Employees - id: 4b22442-dedf-48e0-b8b3-83ef4b1f40a0 name: Customers request_types: - DATA_PROCESSING_OBJECTION - ERASURE_REQUEST received_at: '2024-01-01T06:00:00.000000Z' messages: - id: 9e598f59-5571-4768-b559-3f7a42d2d3ar message: 'A message has been sent.' files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' - id: f6baca27-cbf4-47d4-8470-b8ea3e7f8ea9 name: file2.pdf url: 'https://generated-download-url.com/file2.pdf' user: id: 970f8f55-6518-48f8-8e95-e0ba580483e7 first_name: Hudson last_name: Underwood email: allyson-garrett@me.com status: OPEN custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the Data Subject Request.' incremental_id: type: integer example: 1 description: 'The incremental ID of the data subject request.' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string public_user: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John description: 'The first name of the public user.' nullable: true last_name: type: string example: Doe description: 'The last name of the public user.' nullable: true email: type: string example: john.doe@formalize.com description: 'The email of the public user.' required: - id - first_name - last_name description: 'The public user who created the data subject request.' subject_categories: type: array example: - id: 7dfb66b8-9799-4a09-b5e2-32f2b8c79a0a name: Employees - id: 4b22442-dedf-48e0-b8b3-83ef4b1f40a0 name: Customers description: 'The list of subject categories that the data subject request belongs to.' items: type: object properties: id: type: string example: 7dfb66b8-9799-4a09-b5e2-32f2b8c79a0a name: type: string example: Employees required: - id request_types: type: array example: - DATA_PROCESSING_OBJECTION - ERASURE_REQUEST description: 'The list of request types that the data subject request belongs to.' items: type: string received_at: type: string example: '2024-01-01T06:00:00.000000Z' messages: type: array example: - id: 9e598f59-5571-4768-b559-3f7a42d2d3ar message: 'A message has been sent.' files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' - id: f6baca27-cbf4-47d4-8470-b8ea3e7f8ea9 name: file2.pdf url: 'https://generated-download-url.com/file2.pdf' user: id: 970f8f55-6518-48f8-8e95-e0ba580483e7 first_name: Hudson last_name: Underwood email: allyson-garrett@me.com description: 'List of messages sent by company or public users related to the data subject request.' items: type: object properties: id: type: string example: 9e598f59-5571-4768-b559-3f7a42d2d3ar message: type: string example: 'A message has been sent.' files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' - id: f6baca27-cbf4-47d4-8470-b8ea3e7f8ea9 name: file2.pdf url: 'https://generated-download-url.com/file2.pdf' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id user: type: object properties: id: type: string example: 970f8f55-6518-48f8-8e95-e0ba580483e7 first_name: type: string example: Hudson last_name: type: string example: Underwood email: type: string example: allyson-garrett@me.com required: - id required: - id status: type: string example: OPEN custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' required: - id - incremental_id - public_user - subject_categories - request_types - messages 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - 'Data Subject Requests' patch: summary: 'Update data subject request' operationId: updateDataSubjectRequest description: 'This endpoint allows you to update a single data subject request.' parameters: [] responses: {} tags: - 'Data Subject Requests' requestBody: required: false content: application/json: schema: type: object properties: status: type: string description: 'Status code of the data subject request' example: OPEN enum: - OPEN - CLOSED - IN_PROGRESS closing_code: type: string description: 'Closing code' example: PROCESSED enum: - PROCESSED - DROPPED - REJECTED - RESOLVED - SPAM - OTHER - CANCELLED closing_description: type: string description: 'Closing description' example: 'Request has been withdrawn' custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string delete: summary: 'Delete data subject request' operationId: deleteDataSubjectRequest description: 'This endpoint allows you to delete a single data subject request.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - 'Data Subject Requests' parameters: - in: path name: id description: 'The UUID of the data subject request.' example: 9940ebb1-25db-41d8-9650-a9f34ee55d1a required: true schema: type: string /public/v1/departments: get: summary: 'List departments' operationId: listDepartments description: 'This endpoint allows you to get a paginated list of departments.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' parent_id: null created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/departments?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' parent_id: null created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the department.' name: type: string example: 'Lorem ipsum' description: 'The name of the department.' parent_id: type: string example: null description: 'The UUID of the parent department, if any.' nullable: true created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' required: - id - name - parent_id - created_at - updated_at pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/departments?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Departments post: summary: 'Create department' operationId: createDepartment description: 'This endpoint allows you to create a new department.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' parent_id: null created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the department.' name: type: string example: 'Lorem ipsum' description: 'The name of the department.' parent_id: type: string example: null description: 'The UUID of the parent department, if any.' nullable: true created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' required: - id - name - parent_id - created_at - updated_at 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Departments requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'The name of the department.' example: Engineering parent_id: type: string description: 'The UUID of the parent department, if any.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a nullable: true required: - name '/public/v1/departments/{id}': get: summary: 'Get Department' operationId: getDepartment description: 'Returns a single department by id.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' parent_id: null created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the department.' name: type: string example: 'Lorem ipsum' description: 'The name of the department.' parent_id: type: string example: null description: 'The UUID of the parent department, if any.' nullable: true created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' required: - id - name - parent_id - created_at - updated_at tags: - Departments patch: summary: 'Update department' operationId: updateDepartment description: 'Updates a department by id.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' parent_id: null created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the department.' name: type: string example: 'Lorem ipsum' description: 'The name of the department.' parent_id: type: string example: null description: 'The UUID of the parent department, if any.' nullable: true created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' required: - id - name - parent_id - created_at - updated_at 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Departments requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'The name of the department.' example: Engineering delete: summary: 'Delete department' operationId: deleteDepartment description: 'Deletes a department by id. This also deletes all of its descendant departments in the hierarchy.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true tags: - Departments parameters: - in: path name: id description: 'The UUID of the department.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string /public/v1/employees: get: summary: 'List Employees' operationId: listEmployees description: 'Returns a paginated list of employees.' parameters: - in: query name: updated_after description: 'ISO 8601 timestamp. Only return employees with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' required: false schema: type: string description: 'ISO 8601 timestamp. Only return employees with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 incremental_id: 42 first_name: John last_name: Doe email: john.doe@formalize.com status: EMPLOYED groups: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: 'Lorem ipsum' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/employees?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 incremental_id: 42 first_name: John last_name: Doe email: john.doe@formalize.com status: EMPLOYED groups: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: 'Lorem ipsum' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: id: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 description: 'The UUID of the employee.' incremental_id: type: integer example: 42 description: 'The auto-incrementing numeric ID of the employee.' first_name: type: string example: John description: "The employee's first name." last_name: type: string example: Doe description: "The employee's last name." nullable: true email: type: string example: john.doe@formalize.com description: "The employee's email." status: type: string example: EMPLOYED description: 'The employment status.' enum: - EMPLOYED - TERMINATED groups: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The employee groups the employee belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: 'Lorem ipsum' description: 'The roles the employee has.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: 'Lorem ipsum' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users assigned as responsible for the employee.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The departments the employee belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }`.' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } description: 'Custom field values defined for the employee.' required: - id - incremental_id - first_name - last_name - email - status - groups - roles - created_at - updated_at - responsible_users - departments - connections - custom_fields pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/employees?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Employees post: summary: 'Create employee' operationId: createEmployee description: 'Creates an employee.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 incremental_id: 42 first_name: John last_name: Doe email: john.doe@formalize.com status: EMPLOYED groups: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: 'Lorem ipsum' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' properties: id: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 description: 'The UUID of the employee.' incremental_id: type: integer example: 42 description: 'The auto-incrementing numeric ID of the employee.' first_name: type: string example: John description: "The employee's first name." last_name: type: string example: Doe description: "The employee's last name." nullable: true email: type: string example: john.doe@formalize.com description: "The employee's email." status: type: string example: EMPLOYED description: 'The employment status.' enum: - EMPLOYED - TERMINATED groups: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The employee groups the employee belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: 'Lorem ipsum' description: 'The roles the employee has.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: 'Lorem ipsum' required: - id created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users assigned as responsible for the employee.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id - first_name - last_name - email folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The departments the employee belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }`.' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' description: 'Custom field values defined for the employee.' required: - id - incremental_id - first_name - last_name - email - status - groups - roles - created_at - updated_at - responsible_users - departments - connections - custom_fields tags: - Employees requestBody: required: true content: application/json: schema: type: object properties: first_name: type: string description: "The employee's first name." example: John last_name: type: string description: "The employee's last name." example: Doe email: type: string description: "The employee's email." example: john.doe@formalize.com status: type: string description: '' example: EMPLOYED enum: - EMPLOYED - TERMINATED folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string departments: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string groups: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a items: type: string required: - first_name - email - status '/public/v1/employees/{id}': get: summary: 'Get Employee' operationId: getEmployee description: 'Returns a single employee by id.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 incremental_id: 42 first_name: John last_name: Doe email: john.doe@formalize.com status: EMPLOYED groups: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: 'Lorem ipsum' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' properties: id: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 description: 'The UUID of the employee.' incremental_id: type: integer example: 42 description: 'The auto-incrementing numeric ID of the employee.' first_name: type: string example: John description: "The employee's first name." last_name: type: string example: Doe description: "The employee's last name." nullable: true email: type: string example: john.doe@formalize.com description: "The employee's email." status: type: string example: EMPLOYED description: 'The employment status.' enum: - EMPLOYED - TERMINATED groups: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The employee groups the employee belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: 'Lorem ipsum' description: 'The roles the employee has.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: 'Lorem ipsum' required: - id created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users assigned as responsible for the employee.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id - first_name - last_name - email folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The departments the employee belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }`.' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' description: 'Custom field values defined for the employee.' required: - id - incremental_id - first_name - last_name - email - status - groups - roles - created_at - updated_at - responsible_users - departments - connections - custom_fields tags: - Employees patch: summary: 'Update employee' operationId: updateEmployee description: 'Updates an employee by id.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 incremental_id: 42 first_name: John last_name: Doe email: john.doe@formalize.com status: EMPLOYED groups: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: 'Lorem ipsum' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' properties: id: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 description: 'The UUID of the employee.' incremental_id: type: integer example: 42 description: 'The auto-incrementing numeric ID of the employee.' first_name: type: string example: John description: "The employee's first name." last_name: type: string example: Doe description: "The employee's last name." nullable: true email: type: string example: john.doe@formalize.com description: "The employee's email." status: type: string example: EMPLOYED description: 'The employment status.' enum: - EMPLOYED - TERMINATED groups: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The employee groups the employee belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: 'Lorem ipsum' description: 'The roles of the employee.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: 'Lorem ipsum' required: - id created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users assigned as responsible for the employee.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id - first_name - last_name - email folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The departments the employee belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }`.' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' description: 'Custom field values defined for the employee.' required: - id - incremental_id - first_name - last_name - email - status - groups - roles - created_at - updated_at - responsible_users - departments - connections - custom_fields tags: - Employees requestBody: required: true content: application/json: schema: type: object properties: first_name: type: string description: "The employee's first name" example: John last_name: type: string description: "The employee's last name" example: Doe email: type: string description: "The employee's email" example: john.doe@formalize.com status: type: string description: '' example: EMPLOYED enum: - EMPLOYED - TERMINATED folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string departments: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string groups: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a items: type: string required: - first_name - last_name - email - status delete: summary: 'Delete employee' operationId: deleteEmployee description: 'Delete an employee.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true tags: - Employees parameters: - in: path name: id description: 'The UUID of the employee.' example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 required: true schema: type: string /public/v1/file-entries/presigned-url: post: summary: 'Create upload URL' operationId: createUploadURL description: 'Get a url where you can upload a file. Max 100MB' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: body: content-type: image/png acl: private key: tmp/11223344-1a23-45e6-7890-abcd1e234df X-Amz-Credential: x/20241031/eu-central-1/s3/aws4_request X-Amz-Algorithm: AWS4-HMAC-SHA256 X-Amz-Date: 20241031T084024Z Policy: eyJleHBpcmF0aW9uIjoiMjAyNC0xMC0zMVQwODo0NToyNFoiLCJjb25kaXRpb25zIjpbeyJhY2wiOiJwcml2YXRlIn0seyJidWNrZXQiOiJtaXNjIn0seyJrZXkiOiJ0bXBcLzEyODEzMTM4LTZhNDUtNDBlNy04Njg3LWJkYmQyYzU1OTFkZSJ9LFsiY29udGVudC1sZW5ndGgtcmFuZ2UiLDEsMTAwMDAwMDAwXSx7ImNvbnRlbnQtdHlwZSI6ImltYWdlXC9wbmcifSx7IlgtQW16LURhdGUiOiIyMDI0MTAzMVQwODQwMjRaIn0seyJYLUFtei1DcmVkZW50aWFsIjoibWluaW9hZG1pblwvMjAyNDEwMzFcL2V1LWNlbnRyYWwtMVwvczNcL2F3czRfcmVxdWVzdCJ9LHsiWC1BbXotQWxnb3JpdGhtIjoiQVdTNC1ITUFDLVNIQTI1NiJ9XX0= X-Amz-Signature: 3f6607cd522336d6c6576a558186c5c5ac3ee4dgggge234417201600440459b1f uuid: 11223344-1a23-45e6-7890-abcd1e234df url: 'https://our-upload-bucket.s3.eu-central-1.amazonaws.com' properties: body: type: object properties: content-type: type: string example: image/png acl: type: string example: private key: type: string example: tmp/11223344-1a23-45e6-7890-abcd1e234df X-Amz-Credential: type: string example: x/20241031/eu-central-1/s3/aws4_request X-Amz-Algorithm: type: string example: AWS4-HMAC-SHA256 X-Amz-Date: type: string example: 20241031T084024Z Policy: type: string example: eyJleHBpcmF0aW9uIjoiMjAyNC0xMC0zMVQwODo0NToyNFoiLCJjb25kaXRpb25zIjpbeyJhY2wiOiJwcml2YXRlIn0seyJidWNrZXQiOiJtaXNjIn0seyJrZXkiOiJ0bXBcLzEyODEzMTM4LTZhNDUtNDBlNy04Njg3LWJkYmQyYzU1OTFkZSJ9LFsiY29udGVudC1sZW5ndGgtcmFuZ2UiLDEsMTAwMDAwMDAwXSx7ImNvbnRlbnQtdHlwZSI6ImltYWdlXC9wbmcifSx7IlgtQW16LURhdGUiOiIyMDI0MTAzMVQwODQwMjRaIn0seyJYLUFtei1DcmVkZW50aWFsIjoibWluaW9hZG1pblwvMjAyNDEwMzFcL2V1LWNlbnRyYWwtMVwvczNcL2F3czRfcmVxdWVzdCJ9LHsiWC1BbXotQWxnb3JpdGhtIjoiQVdTNC1ITUFDLVNIQTI1NiJ9XX0= X-Amz-Signature: type: string example: 3f6607cd522336d6c6576a558186c5c5ac3ee4dgggge234417201600440459b1f uuid: type: string example: 11223344-1a23-45e6-7890-abcd1e234df url: type: string example: 'https://our-upload-bucket.s3.eu-central-1.amazonaws.com' 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Files requestBody: required: true content: application/json: schema: type: object properties: file_name: type: string description: 'Must be at least 1 character. Must not be greater than 255 characters.' example: febhxyi file_extension: type: string description: 'The extension of the file. Supported file types:' example: XLS enum: - XLS - XLT - XLSX - XLSM - DOCX - PPTX - PPT - RTF - PUB - DOC - DOT - PAGES - NUMBERS - ODT - ODS - ODP - ODG - ODF - ODB - TXT - PDF - HEIC - JPEG - JPG - PNG - AVIF - BMP - TIF - TIFF - EPS - SVG - AI - PSD - WEBP - HDR - RAW - CRW - NEF - PEF - CR2 - AC3 - AIFF - AIF - AIFC - FLAC - MP2 - MP3 - M4A - M4B - M4R - OGG - OGA - SPX - OPUS - WAV - WMA - AAC - MP4 - M4P - M4V - MOV - WMV - AVI - AVCHD - FLV - F4V - SWF - MKV - WEBM - MPV - MPE - MPEG - MPG - M2V - QT - GIF - OGV - OGX - OGM - MSG - EML - CSV - JSON - JSONL - ZIP required: - file_name - file_extension '/public/v1/folders/{entity_type}': get: summary: 'List folders' operationId: listFolders description: 'This endpoint allows you to get a paginated list of folders.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/folders/ASSET?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the folder.' name: type: string example: 'Lorem ipsum' description: 'The name of the folder.' required: - id - name pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/folders/ASSET?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Folders parameters: - in: path name: entity_type description: 'The type of entity to get folders for. One of: ASSET, CUSTOMER, INCIDENT, POLICY, PROCESSING_ACTIVITY, QUESTIONNAIRE, RISK, SUPPLIER, SYSTEM, TASK, PROCESS, EMPLOYEE, EMPLOYEE_ROLE, AUTOMATION, BUSINESS_FUNCTION, DATA_REPORT, CONTRACT' example: ASSET required: true schema: type: string /public/v1/incidents: get: summary: 'List incidents' operationId: listIncidents description: 'This endpoint allows you to get a paginated list of incidents.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' description: 'Unauthorized access to sensitive data' severity: HIGH incident_occurred_at: '2023-07-25T14:15:22.000000Z' incident_discovered_at: '2023-07-26T09:45:00.000000Z' resolved: false custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/incidents?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' description: 'Unauthorized access to sensitive data' severity: HIGH incident_occurred_at: '2023-07-25T14:15:22.000000Z' incident_discovered_at: '2023-07-26T09:45:00.000000Z' resolved: false custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the incident.' incremental_id: type: integer example: 1 description: 'The incremental ID of the incident.' name: type: string example: 'Incident A' description: 'The name of the incident.' description: type: string example: 'Unauthorized access to sensitive data' description: 'The description of the incident.' nullable: true severity: type: string example: HIGH incident_occurred_at: type: string example: '2023-07-25T14:15:22.000000Z' incident_discovered_at: type: string example: '2023-07-26T09:45:00.000000Z' resolved: type: boolean example: false custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id - incremental_id - name - description pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/incidents?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Incidents post: summary: 'Create incident' operationId: createIncident description: 'This endpoint allows you to create a new incident.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' description: 'Unauthorized access to sensitive data' severity: HIGH incident_occurred_at: '2023-07-25T14:15:22.000000Z' incident_discovered_at: '2023-07-26T09:45:00.000000Z' resolved: false custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the incident.' incremental_id: type: integer example: 1 name: type: string example: 'Incident A' description: 'The name of the incident.' description: type: string example: 'Unauthorized access to sensitive data' description: 'The description of the incident.' nullable: true severity: type: string example: HIGH incident_occurred_at: type: string example: '2023-07-25T14:15:22.000000Z' incident_discovered_at: type: string example: '2023-07-26T09:45:00.000000Z' resolved: type: boolean example: false custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id required: - id - name - description 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Incidents requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: 'Data Breach' description: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Unauthorized access to sensitive data. Very important for business' severity: type: string description: 'The severity level of the incident (LOW, MEDIUM or HIGH).' example: HIGH incident_occurred_at: type: string description: "The date and time when the incident occurred, in ISO 8601 format. This value must be a date and time that is earlier than the 'incident_discovered_at' timestamp." example: '2023-07-25T14:15:22+00:00' incident_discovered_at: type: string description: 'The date and time when the incident was discovered, in ISO 8601 format.' example: '2023-07-26T09:45:00+00:00' custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string required: - name - severity '/public/v1/incidents/{id}': get: summary: 'Get incident' operationId: getIncident description: 'This endpoint allows you to get a single incident.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' description: 'Unauthorized access to sensitive data' severity: HIGH incident_occurred_at: '2023-07-25T14:15:22.000000Z' incident_discovered_at: '2023-07-26T09:45:00.000000Z' resolved: false custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the incident.' incremental_id: type: integer example: 1 description: 'The incremental ID of the incident.' name: type: string example: 'Incident A' description: 'The name of the incident.' description: type: string example: 'Unauthorized access to sensitive data' description: 'The description of the incident.' nullable: true severity: type: string example: HIGH description: 'The severity of the incident.' nullable: true incident_occurred_at: type: string example: '2023-07-25T14:15:22.000000Z' description: 'The date and time when the incident occurred, in ISO 8601 format.' nullable: true incident_discovered_at: type: string example: '2023-07-26T09:45:00.000000Z' description: 'The date and time when the incident was discovered, in ISO 8601 format.' nullable: true resolved: type: boolean example: false description: 'If the incident is marked as resolved.' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id required: - id - incremental_id - name - description - severity - incident_occurred_at - incident_discovered_at - resolved 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Incidents patch: summary: 'Update incident' operationId: updateIncident description: 'This endpoint allows you to update an incident.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' description: 'Unauthorized access to sensitive data' severity: HIGH incident_occurred_at: '2023-07-25T14:15:22.000000Z' incident_discovered_at: '2023-07-26T09:45:00.000000Z' resolved: false custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the incident.' incremental_id: type: integer example: 1 name: type: string example: 'Incident A' description: 'The name of the incident.' description: type: string example: 'Unauthorized access to sensitive data' description: 'The description of the incident.' nullable: true severity: type: string example: HIGH incident_occurred_at: type: string example: '2023-07-25T14:15:22.000000Z' incident_discovered_at: type: string example: '2023-07-26T09:45:00.000000Z' resolved: type: boolean example: false custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id required: - id - name - description 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Incidents requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: 'Data Breach' description: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Unauthorized access to sensitive data. Very important for business' severity: type: string description: 'The severity level of the incident (LOW, MEDIUM or HIGH).' example: HIGH incident_occurred_at: type: string description: 'The date and time when the incident occurred, in ISO 8601 format.' example: '2023-07-25T14:15:22+00:00' incident_discovered_at: type: string description: 'The date and time when the incident was discovered, in ISO 8601 format.' example: '2023-07-26T09:45:00+00:00' resolved: type: boolean description: 'If the incident is resolved.' example: true custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string required: - name - severity delete: summary: 'Delete incident' operationId: deleteIncident description: 'This endpoint allows you to delete an incident.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Incidents parameters: - in: path name: id description: 'The UUID of the incident.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string /public/v1/policies: get: summary: 'List policies' operationId: listPolicies description: 'This endpoint allows you to get a paginated list of policies.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Acceptable Use Policy' version_count: 3 latest_published_version: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' latest_version: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Acceptable Use Policy' version_count: 3 latest_published_version: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: WYSIWYG published_at: null content: '

Acceptable Use Policy

All employees must...

' content_file: null latest_version: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: WYSIWYG published_at: null content: '

Acceptable Use Policy

All employees must...

' content_file: null folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/policies?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 2 total: 2 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Acceptable Use Policy' version_count: 3 latest_published_version: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' latest_version: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Acceptable Use Policy' version_count: 3 latest_published_version: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: WYSIWYG published_at: null content: '

Acceptable Use Policy

All employees must...

' content_file: null latest_version: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: WYSIWYG published_at: null content: '

Acceptable Use Policy

All employees must...

' content_file: null folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the policy.' name: type: string example: 'Acceptable Use Policy' description: 'The name of the policy.' version_count: type: integer example: 3 description: 'The total number of versions of the policy (drafts + published).' latest_published_version: type: object properties: id: type: string example: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d description: 'The UUID of the version.' version_name: type: string example: 'Version 1.0' description: 'Human-readable name of the version.' content_type: type: string example: PDF description: 'The content format of the version: `WYSIWYG` for HTML content or `PDF` for an uploaded file.' published_at: type: string example: null description: 'ISO 8601 timestamp when the version was published, or null if it is still a draft.' nullable: true content: type: string example: null description: 'HTML content of the version. Only when `content_type` is `WYSIWYG`' nullable: true content_file: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'The UUID of the file.' name: type: string example: policy.pdf description: 'The display name of the file.' url: type: string example: 'https://generated-download-url.com/policy.pdf' description: 'A signed download URL for the file.' required: - id - name - url description: 'File attached to the version. Only when `content_type` is `PDF`' nullable: true required: - id - version_name - content_type - published_at - content - content_file description: 'The most recent published version of the policy, or null if no version has been published.' nullable: true latest_version: type: object properties: id: type: string example: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d description: 'The UUID of the version.' version_name: type: string example: 'Version 1.0' description: 'Human-readable name of the version.' content_type: type: string example: PDF description: 'The content format of the version: `WYSIWYG` for HTML content or `PDF` for an uploaded file.' published_at: type: string example: null description: 'ISO 8601 timestamp when the version was published, or null if it is still a draft.' nullable: true content: type: string example: null description: 'HTML content of the version. Only when `content_type` is `WYSIWYG`' nullable: true content_file: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'The UUID of the file.' name: type: string example: policy.pdf description: 'The display name of the file.' url: type: string example: 'https://generated-download-url.com/policy.pdf' description: 'A signed download URL for the file.' required: - id - name - url description: 'File attached to the version. Only when `content_type` is `PDF`' nullable: true required: - id - version_name - content_type - published_at - content - content_file description: 'The most recent version of the policy.' nullable: true folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - version_count - latest_published_version - latest_version pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/policies?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 2 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 2 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Policies post: summary: 'Create policy' operationId: createPolicy description: 'This endpoint allows you to create a new policy and its first (draft) version. Optionally provide either inline HTML content or a content_file_id referencing a previously uploaded PDF; if neither is provided, an empty WYSIWYG draft is created.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Acceptable Use Policy' version_count: 3 latest_published_version: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' latest_version: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the policy.' name: type: string example: 'Acceptable Use Policy' description: 'The name of the policy.' version_count: type: integer example: 3 description: 'The total number of versions of the policy (drafts + published).' latest_published_version: type: object properties: id: type: string example: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d description: 'The UUID of the version.' version_name: type: string example: 'Version 1.0' description: 'Human-readable name of the version.' content_type: type: string example: PDF description: 'The content format of the version: `WYSIWYG` for HTML content or `PDF` for an uploaded file.' published_at: type: string example: null description: 'ISO 8601 timestamp when the version was published, or null if it is still a draft.' nullable: true content: type: string example: null description: 'HTML content of the version. Only when `content_type` is `WYSIWYG`' nullable: true content_file: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'The UUID of the file.' name: type: string example: policy.pdf description: 'The display name of the file.' url: type: string example: 'https://generated-download-url.com/policy.pdf' description: 'A signed download URL for the file.' required: - id - name - url description: 'File attached to the version. Only when `content_type` is `PDF`' nullable: true required: - id - version_name - content_type - published_at - content - content_file description: 'The most recent published version of the policy, or null if no version has been published.' nullable: true latest_version: type: object properties: id: type: string example: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d description: 'The UUID of the version.' version_name: type: string example: 'Version 1.0' description: 'Human-readable name of the version.' content_type: type: string example: PDF description: 'The content format of the version: `WYSIWYG` for HTML content or `PDF` for an uploaded file.' published_at: type: string example: null description: 'ISO 8601 timestamp when the version was published, or null if it is still a draft.' nullable: true content: type: string example: null description: 'HTML content of the version. Only when `content_type` is `WYSIWYG`' nullable: true content_file: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'The UUID of the file.' name: type: string example: policy.pdf description: 'The display name of the file.' url: type: string example: 'https://generated-download-url.com/policy.pdf' description: 'A signed download URL for the file.' required: - id - name - url description: 'File attached to the version. Only when `content_type` is `PDF`' nullable: true required: - id - version_name - content_type - published_at - content - content_file description: 'The most recent version of the policy.' nullable: true folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - version_count - latest_published_version - latest_version 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Policies requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: 'Acceptable Use Policy' content: type: string description: 'HTML is allowed. The following tags are supported: ' example: '

Acceptable Use Policy

' content_file_id: type: string description: 'UUID of a previously uploaded file (PDF). Provide either this or content.' example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a items: type: string required: - name '/public/v1/policies/{id}': get: summary: 'Get policy' operationId: getPolicy description: 'This endpoint allows you to get a single policy.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Acceptable Use Policy' version_count: 3 latest_published_version: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' latest_version: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the policy.' name: type: string example: 'Acceptable Use Policy' description: 'The name of the policy.' version_count: type: integer example: 3 description: 'The total number of versions of the policy (drafts + published).' latest_published_version: type: object properties: id: type: string example: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d description: 'The UUID of the version.' version_name: type: string example: 'Version 1.0' description: 'Human-readable name of the version.' content_type: type: string example: PDF description: 'The content format of the version: `WYSIWYG` for HTML content or `PDF` for an uploaded file.' published_at: type: string example: null description: 'ISO 8601 timestamp when the version was published, or null if it is still a draft.' nullable: true content: type: string example: null description: 'HTML content of the version. Only when `content_type` is `WYSIWYG`' nullable: true content_file: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'The UUID of the file.' name: type: string example: policy.pdf description: 'The display name of the file.' url: type: string example: 'https://generated-download-url.com/policy.pdf' description: 'A signed download URL for the file.' required: - id - name - url description: 'File attached to the version. Only when `content_type` is `PDF`' nullable: true required: - id - version_name - content_type - published_at - content - content_file description: 'The most recent published version of the policy, or null if no version has been published.' nullable: true latest_version: type: object properties: id: type: string example: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d description: 'The UUID of the version.' version_name: type: string example: 'Version 1.0' description: 'Human-readable name of the version.' content_type: type: string example: PDF description: 'The content format of the version: `WYSIWYG` for HTML content or `PDF` for an uploaded file.' published_at: type: string example: null description: 'ISO 8601 timestamp when the version was published, or null if it is still a draft.' nullable: true content: type: string example: null description: 'HTML content of the version. Only when `content_type` is `WYSIWYG`' nullable: true content_file: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'The UUID of the file.' name: type: string example: policy.pdf description: 'The display name of the file.' url: type: string example: 'https://generated-download-url.com/policy.pdf' description: 'A signed download URL for the file.' required: - id - name - url description: 'File attached to the version. Only when `content_type` is `PDF`' nullable: true required: - id - version_name - content_type - published_at - content - content_file description: 'The most recent version of the policy.' nullable: true folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - version_count - latest_published_version - latest_version 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Policies delete: summary: 'Delete policy' operationId: deletePolicy description: 'This endpoint allows you to delete a single policy.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Policies patch: summary: 'Update policy' operationId: updatePolicy description: 'This endpoint allows you to partially or completely update a single policy and its relations.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Acceptable Use Policy' version_count: 3 latest_published_version: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' latest_version: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the policy.' name: type: string example: 'Acceptable Use Policy' description: 'The name of the policy.' version_count: type: integer example: 3 latest_published_version: type: object properties: id: type: string example: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: type: string example: 'Version 1.0' content_type: type: string example: PDF published_at: type: string example: null nullable: true content: type: string example: null nullable: true content_file: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: policy.pdf url: type: string example: 'https://generated-download-url.com/policy.pdf' required: - id - name required: - id latest_version: type: object properties: id: type: string example: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d description: 'The UUID of the version.' version_name: type: string example: 'Version 1.0' description: 'Human-readable name of the version.' content_type: type: string example: PDF description: 'The content format of the version: `WYSIWYG` for HTML content or `PDF` for an uploaded file.' published_at: type: string example: null description: 'ISO 8601 timestamp when the version was published, or null if it is still a draft.' nullable: true content: type: string example: null description: 'HTML content of the version. Only when `content_type` is `WYSIWYG`' nullable: true content_file: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'The UUID of the file.' name: type: string example: policy.pdf description: 'The display name of the file.' url: type: string example: 'https://generated-download-url.com/policy.pdf' description: 'A signed download URL for the file.' required: - id - name - url description: 'File attached to the version. Only when `content_type` is `PDF`' nullable: true required: - id - version_name - content_type - published_at - content - content_file description: 'The most recent version of the policy.' nullable: true folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - latest_version 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Policies requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: '' example: 'Acceptable Use Policy' responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a items: type: string parameters: - in: path name: id description: 'The UUID of the policy.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string '/public/v1/policies/{id}/versions': post: summary: 'Create policy version' operationId: createPolicyVersion description: 'Create a new draft version of a policy. Provide either inline HTML content or a content_file_id referencing a previously uploaded PDF; if neither is provided, an empty WYSIWYG draft is created.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 2.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' acceptance_summary: total: 0 accepted: 0 pending: 0 properties: id: type: string example: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d description: 'The UUID of the version.' version_name: type: string example: 'Version 2.0' description: 'Human-readable name of the version.' content_type: type: string example: PDF description: 'The content format of the version: `WYSIWYG` for HTML content or `PDF` for an uploaded file.' published_at: type: string example: null description: 'ISO 8601 timestamp when the version was published, or null if it is still a draft.' nullable: true content: type: string example: null description: 'HTML content of the version. Only when `content_type` is `WYSIWYG`' nullable: true content_file: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'The UUID of the file.' name: type: string example: policy.pdf description: 'The display name of the file.' url: type: string example: 'https://generated-download-url.com/policy.pdf' description: 'A signed download URL for the file.' required: - id - name - url description: 'File attached to the version. Only when `content_type` is `PDF`' nullable: true acceptance_summary: type: object properties: total: type: integer example: 0 description: 'Total number of acceptance responses for this version.' accepted: type: integer example: 0 description: 'Number of employees who have accepted this version.' pending: type: integer example: 0 description: 'Number of employees who have not yet accepted this version.' required: - total - accepted - pending description: 'Summary of acceptance responses across all assigned employees for this version.' required: - id - version_name - content_type - published_at - content - content_file - acceptance_summary 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Policies requestBody: required: false content: application/json: schema: type: object properties: version_name: type: string description: 'Optional human-readable version name. If omitted, defaults to "Version N.0" where N is the next sequential version number.' example: 'Version 2.0' content: type: string description: 'HTML is allowed. The following tags are supported: ' example: '

Updated policy

' content_file_id: type: string description: 'UUID of a previously uploaded file (PDF). Provide either this or content.' example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf get: summary: 'List policy versions' operationId: listPolicyVersions description: 'This endpoint allows you to get a paginated list of policy versions.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' - id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: WYSIWYG published_at: null content: '

Acceptable Use Policy

All employees must...

' content_file: null pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/policies/5664baf5-e71c-44da-ab5e-addde6e3410f/versions?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 2 total: 2 properties: data: type: array example: - id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' - id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 1.0' content_type: WYSIWYG published_at: null content: '

Acceptable Use Policy

All employees must...

' content_file: null items: type: object properties: id: type: string example: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d description: 'The UUID of the version.' version_name: type: string example: 'Version 1.0' description: 'Human-readable name of the version.' content_type: type: string example: PDF description: 'The content format of the version: `WYSIWYG` for HTML content or `PDF` for an uploaded file.' published_at: type: string example: null description: 'ISO 8601 timestamp when the version was published, or null if it is still a draft.' nullable: true content: type: string example: null description: 'HTML content of the version. Only when `content_type` is `WYSIWYG`' nullable: true content_file: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'The UUID of the file.' name: type: string example: policy.pdf description: 'The display name of the file.' url: type: string example: 'https://generated-download-url.com/policy.pdf' description: 'A signed download URL for the file.' required: - id - name - url description: 'File attached to the version. Only when `content_type` is `PDF`' nullable: true required: - id - version_name - content_type - published_at - content - content_file pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/policies/5664baf5-e71c-44da-ab5e-addde6e3410f/versions?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 2 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 2 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Policies parameters: - in: path name: id description: 'The UUID of the policy.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string '/public/v1/policies/{id}/versions/{version_id}': get: summary: 'Get policy version' operationId: getPolicyVersion description: 'This endpoint allows you to get a single policy version.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 2.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' acceptance_summary: total: 0 accepted: 0 pending: 0 properties: id: type: string example: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d description: 'The UUID of the version.' version_name: type: string example: 'Version 2.0' description: 'Human-readable name of the version.' content_type: type: string example: PDF description: 'The content format of the version: `WYSIWYG` for HTML content or `PDF` for an uploaded file.' published_at: type: string example: null description: 'ISO 8601 timestamp when the version was published, or null if it is still a draft.' nullable: true content: type: string example: null description: 'HTML content of the version. Only when `content_type` is `WYSIWYG`' nullable: true content_file: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'The UUID of the file.' name: type: string example: policy.pdf description: 'The display name of the file.' url: type: string example: 'https://generated-download-url.com/policy.pdf' description: 'A signed download URL for the file.' required: - id - name - url description: 'File attached to the version. Only when `content_type` is `PDF`' nullable: true acceptance_summary: type: object properties: total: type: integer example: 0 description: 'Total number of acceptance responses for this version.' accepted: type: integer example: 0 description: 'Number of employees who have accepted this version.' pending: type: integer example: 0 description: 'Number of employees who have not yet accepted this version.' required: - total - accepted - pending description: 'Summary of acceptance responses across all assigned employees for this version.' required: - id - version_name - content_type - published_at - content - content_file - acceptance_summary tags: - Policies delete: summary: 'Delete policy version' operationId: deletePolicyVersion description: "Soft-delete a single policy version. Cascades to the version's acceptance responses and approval flow data." parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Policies patch: summary: 'Update policy version' operationId: updatePolicyVersion description: 'Update a draft version of a policy. Provide a `published_at` timestamp to publish the version.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d version_name: 'Version 2.0' content_type: PDF published_at: null content: null content_file: id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: policy.pdf url: 'https://generated-download-url.com/policy.pdf' acceptance_summary: total: 0 accepted: 0 pending: 0 properties: id: type: string example: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d description: 'The UUID of the version.' version_name: type: string example: 'Version 2.0' description: 'Human-readable name of the version.' content_type: type: string example: PDF description: 'The content format of the version: `WYSIWYG` for HTML content or `PDF` for an uploaded file.' published_at: type: string example: null description: 'ISO 8601 timestamp when the version was published, or null if it is still a draft.' nullable: true content: type: string example: null description: 'HTML content of the version. Only when `content_type` is `WYSIWYG`' nullable: true content_file: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'The UUID of the file.' name: type: string example: policy.pdf description: 'The display name of the file.' url: type: string example: 'https://generated-download-url.com/policy.pdf' description: 'A signed download URL for the file.' required: - id - name - url description: 'File attached to the version. Only when `content_type` is `PDF`' nullable: true acceptance_summary: type: object properties: total: type: integer example: 0 description: 'Total number of acceptance responses for this version.' accepted: type: integer example: 0 description: 'Number of employees who have accepted this version.' pending: type: integer example: 0 description: 'Number of employees who have not yet accepted this version.' required: - total - accepted - pending description: 'Summary of acceptance responses across all assigned employees for this version.' required: - id - version_name - content_type - published_at - content - content_file - acceptance_summary 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' 409: description: '' content: application/json: schema: type: object example: status: 409 title: Conflict errors: - 'Acceptances can only be synced on a published version.' properties: status: type: integer example: 409 title: type: string example: Conflict errors: type: array example: - 'Acceptances can only be synced on a published version.' items: type: string 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Policies requestBody: required: false content: application/json: schema: type: object properties: version_name: type: string description: 'Optional human-readable version name. If omitted, defaults to "Version N.0" where N is the next sequential version number.' example: 'Version 2.0' published_at: type: string description: 'ISO 8601 timestamp when the version was published. Provide a value to publish the version. *NOTE:* will be rounded down to nearest second' example: '2026-05-19T13:24:14Z' content: type: string description: 'HTML is allowed. The following tags are supported: ' example: '

Updated policy

' content_file_id: type: string description: 'UUID of a previously uploaded file (PDF). Provide either this or content.' example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf parameters: - in: path name: id description: 'The UUID of the policy.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string - in: path name: version_id description: 'The UUID of the version, or one of the aliases "latest" (the most recent version, draft or published) or "latest-published" (the most recent published version).' example: latest-published required: true schema: type: string '/public/v1/policies/{id}/versions/{version_id}/acceptances': patch: summary: 'Sync policy acceptances' operationId: syncPolicyAcceptances description: 'Batch upsert employee acceptance responses for a published policy version. Returns the count of successfully synced entries along with a per-entry errors list for emails that did not match an employed employee. No notifications are dispatched.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: synced: 2 errors: - employee_email: unknown@example.com error: employee_not_found properties: synced: type: integer example: 2 description: 'Number of acceptance responses successfully created or updated.' errors: type: array example: - employee_email: unknown@example.com error: employee_not_found description: 'Entries that could not be processed. The rest of the batch is still applied.' items: type: object properties: employee_email: type: string example: unknown@example.com error: type: string example: employee_not_found required: - synced - errors 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' 409: description: '' content: application/json: schema: type: object example: status: 409 title: Conflict errors: - 'Acceptances can only be synced on a published version.' properties: status: type: integer example: 409 title: type: string example: Conflict errors: type: array example: - 'Acceptances can only be synced on a published version.' description: 'Entries that could not be processed. The rest of the batch is still applied.' items: type: string required: - errors 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string description: 'Entries that could not be processed. The rest of the batch is still applied.' required: - errors tags: - Policies requestBody: required: true content: application/json: schema: type: object properties: acceptances: type: array description: 'Up to 500 acceptance entries to upsert. Each entry sets the status for the employee identified by their email.' example: - employee_email: employee@example.com status: ACCEPTED items: type: object properties: employee_email: type: string description: 'Email of the employee. Matched case-insensitively.' example: employee@example.com status: type: string description: 'New acceptance status: ACCEPTED or PENDING.' example: ACCEPTED required: - employee_email - status required: - acceptances get: summary: 'List policy acceptances' operationId: listPolicyAcceptances description: 'This endpoint allows you to get a paginated list of acceptances for a given policy.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a created_at: '1970-01-01 00:00:00' updated_at: '1970-01-02 00:00:00' status: ACCEPTED employee: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a email: john@doe.com first_name: John last_name: Doe pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/policies/5664baf5-e71c-44da-ab5e-addde6e3410f/versions/9940ebb1-25db-41d8-9650-a9f39ee55d1a/acceptances?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a created_at: '1970-01-01 00:00:00' updated_at: '1970-01-02 00:00:00' status: ACCEPTED employee: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a email: john@doe.com first_name: John last_name: Doe items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a created_at: type: string example: '1970-01-01 00:00:00' updated_at: type: string example: '1970-01-02 00:00:00' status: type: string example: ACCEPTED employee: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a email: type: string example: john@doe.com first_name: type: string example: John last_name: type: string example: Doe description: 'The last name of the employee.' nullable: true required: - last_name pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/policies/5664baf5-e71c-44da-ab5e-addde6e3410f/versions/9940ebb1-25db-41d8-9650-a9f39ee55d1a/acceptances?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Policies parameters: - in: path name: id description: 'The UUID of the policy.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string - in: path name: version_id description: 'The UUID of the version, or one of the aliases "latest" (the most recent version, draft or published) or "latest-published" (the most recent published version).' example: latest-published required: true schema: type: string /public/v1/processes: get: summary: 'List processes' operationId: listProcesses description: 'This endpoint allows you to get a paginated list of process.' parameters: - in: query name: updated_after description: 'ISO 8601 timestamp. Only return processes with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' required: false schema: type: string description: 'ISO 8601 timestamp. Only return processes with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'Onboarding process. Very important for business' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' top_level_parent: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1c incremental_id: 2 name: 'Process Parent' pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/processes?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'Onboarding process. Very important for business' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' top_level_parent: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1c incremental_id: 2 name: 'Process Parent' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the Process.' incremental_id: type: integer example: 1 description: 'The incremental ID of the process.' name: type: string example: 'Process A' description: 'The name of the Process.' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: type: string example: 'Onboarding process. Very important for business' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } top_level_parent: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1c description: 'The UUID of the top level parent process.' incremental_id: type: integer example: 2 description: 'The incremental ID of the top level parent process.' name: type: string example: 'Process Parent' description: 'The name of the top level parent process.' required: - id - incremental_id - name description: 'The top level parent of the process. The parent points to itself.' required: - id - incremental_id - name - created_at - updated_at - top_level_parent pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/processes?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Processes post: summary: 'Create process' operationId: createProcess description: 'This endpoint allows you to create a new process.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'Onboarding process. Very important for business' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' top_level_parent: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1c incremental_id: 2 name: 'Process Parent' assets: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' customers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' systems: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the process.' incremental_id: type: integer example: 1 name: type: string example: 'Process A' description: 'The name of the process.' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: type: string example: 'Onboarding process. Very important for business' description: 'The description of the process.' nullable: true created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' top_level_parent: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1c incremental_id: type: integer example: 2 name: type: string example: 'Process Parent' required: - id - name assets: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Cloud Service Subscription Asset' required: - id - name suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' required: - id - name customers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' required: - id - name systems: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'System A' required: - id - name required: - id - name - description - created_at - updated_at 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Processes requestBody: required: true content: application/json: schema: type: object properties: parent_id: type: string description: 'The UUID of the parent process' example: 9940ebb2-25db-41d8-9650-a9f39ee55d1a name: type: string description: '' example: 'Process A' description: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Onboarding process. Very important for business' departments: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string suppliers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true systems: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true customers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true assets: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - name '/public/v1/processes/{id}': get: summary: 'Get process' operationId: getProcess description: 'This endpoint allows you to get a single process.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'Onboarding process. Very important for business' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' top_level_parent: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1c incremental_id: 2 name: 'Process Parent' assets: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' customers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' systems: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the Process.' incremental_id: type: integer example: 1 description: 'The incremental ID of the Process.' name: type: string example: 'Process A' description: 'The name of the Process.' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: type: string example: 'Onboarding process. Very important for business' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' top_level_parent: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1c description: 'The UUID of the top level parent process.' incremental_id: type: integer example: 2 description: 'The incremental ID of the top level parent process.' name: type: string example: 'Process Parent' description: 'The name of the top level parent process.' required: - id - incremental_id - name description: 'The top level parent of the process. The parent points to itself.' assets: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Cloud Service Subscription Asset' required: - id - incremental_id - name suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' required: - id - incremental_id - name customers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' required: - id - incremental_id - name systems: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'System A' required: - id - incremental_id - name required: - id - incremental_id - name - created_at - updated_at - top_level_parent 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Processes patch: summary: 'Update process' operationId: updateProcess description: 'This endpoint allows you to update a process.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf description: 'Onboarding process. Very important for business' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com departments: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' top_level_parent: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1c incremental_id: 2 name: 'Process Parent' assets: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' customers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' systems: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the process.' incremental_id: type: integer example: 1 name: type: string example: 'Process A' description: 'The name of the process.' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: type: string example: 'Onboarding process. Very important for business' description: 'The description of the process.' nullable: true created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id departments: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' top_level_parent: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1c incremental_id: type: integer example: 2 name: type: string example: 'Process Parent' required: - id - name assets: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Cloud Service Subscription Asset' required: - id - name suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' required: - id - name customers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' required: - id - name systems: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'System A' required: - id - name required: - id - name - description - created_at - updated_at 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Processes requestBody: required: false content: application/json: schema: type: object properties: parent_id: type: string description: 'The UUID of the parent process' example: 9940ebb2-25db-41d8-9650-a9f39ee55d1a name: type: string description: '' example: 'Process A' description: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Onboarding process. Very important for business' departments: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string suppliers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true assets: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true systems: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true customers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string delete: summary: 'Delete Process' operationId: deleteProcess description: 'This endpoint allows you to delete a process.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Processes parameters: - in: path name: id description: 'The UUID of the Process.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string /public/v1/questionnaires: get: summary: 'List questionnaires' operationId: listQuestionnaires description: 'List of questionnaires' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Questionnaire A' pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/questionnaires?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Questionnaire A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Questionnaire A' pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/questionnaires?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Questionnaires /public/v1/recurring-tasks: get: summary: 'List recurring tasks' operationId: listRecurringTasks description: 'This endpoint allows you to get recurring tasks.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Recurring Task A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate priority: LOW deadline: '2023-10-01T00:00:00Z' recurrence: FREQ=MONTHLY;INTERVAL=1;BYMONTHDAY=1 create_task_before_deadline_days: 1 folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' assets: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' systems: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' processes: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf customers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' incidents: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' controls: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 data_subject_requests: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf business_functions: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' contracts: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' completion_type: DEFAULT_COMPLETION_FLOW questionnaire_id: null custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/recurring-tasks?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Recurring Task A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate priority: LOW deadline: '2023-10-01T00:00:00Z' recurrence: FREQ=MONTHLY;INTERVAL=1;BYMONTHDAY=1 create_task_before_deadline_days: 1 folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' assets: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' systems: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' processes: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf customers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' incidents: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' controls: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 data_subject_requests: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf business_functions: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' contracts: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' completion_type: DEFAULT_COMPLETION_FLOW questionnaire_id: null custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Recurring Task A' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate priority: type: string example: LOW deadline: type: string example: '2023-10-01T00:00:00Z' recurrence: type: string example: FREQ=MONTHLY;INTERVAL=1;BYMONTHDAY=1 create_task_before_deadline_days: type: integer example: 1 folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' assets: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Cloud Service Subscription Asset' systems: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'System A' processes: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Process A' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string customers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' incidents: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Incident A' controls: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Control A' identifier: type: string example: 1.1.1 data_subject_requests: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string business_functions: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Business Function A' contracts: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' completion_type: type: string example: DEFAULT_COMPLETION_FLOW questionnaire_id: type: string example: null nullable: true custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/recurring-tasks?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - 'Recurring Tasks' post: summary: 'Create recurring task' operationId: createRecurringTask description: 'This endpoint allows you to create a new recurring task.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Recurring Task A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate priority: LOW deadline: '2023-10-01T00:00:00Z' recurrence: FREQ=MONTHLY;INTERVAL=1;BYMONTHDAY=1 create_task_before_deadline_days: 1 folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' assets: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' systems: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' processes: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf customers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' incidents: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' controls: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 data_subject_requests: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf business_functions: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' contracts: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' completion_type: DEFAULT_COMPLETION_FLOW questionnaire_id: null custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Recurring Task A' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate priority: type: string example: LOW deadline: type: string example: '2023-10-01T00:00:00Z' recurrence: type: string example: FREQ=MONTHLY;INTERVAL=1;BYMONTHDAY=1 create_task_before_deadline_days: type: integer example: 1 folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' assets: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Cloud Service Subscription Asset' systems: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'System A' processes: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Process A' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string customers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' incidents: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Incident A' controls: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Control A' identifier: type: string example: 1.1.1 data_subject_requests: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string business_functions: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Business Function A' contracts: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' completion_type: type: string example: DEFAULT_COMPLETION_FLOW description: 'Whenever a recurring task has a custom completion flow, the value returned will be CUSTOM.' enum: - DEFAULT_COMPLETION_FLOW - QUESTIONNAIRE - CUSTOM questionnaire_id: type: string example: null nullable: true custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' required: - completion_type 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - 'Recurring Tasks' requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: 'Must be at least 1 character. Must not be greater than 1024 characters.' example: febhxyi description: type: string description: 'Must be at least 0 characters. Must not be greater than 10485760 characters.' example: 'Cupiditate non occaecati vero quam.' nullable: true priority: type: string description: '' example: LOW enum: - LOW - MEDIUM - HIGH - CRITICAL nullable: true deadline: type: string description: 'The first deadline of the recurring task, in ISO 8601 format' example: libero recurrence: type: string description: 'Follows RFC 5545' example: FREQ=MONTHLY;INTERVAL=1;BYMONTHDAY=1 create_task_before_deadline_days: type: integer description: 'Number of days before the deadline to create the task.' example: 7 folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string suppliers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true assets: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true systems: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true processes: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true customers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true incidents: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true files: type: array description: 'Files regarding recurring task' example: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3ba items: type: string controls: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true data_subject_requests: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true business_functions: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true contracts: type: object description: '' example: null properties: {} completion_type: type: string description: '' example: DEFAULT_COMPLETION_FLOW enum: - DEFAULT_COMPLETION_FLOW - QUESTIONNAIRE nullable: true questionnaire_id: type: string description: 'This field is required when completion_type is QUESTIONNAIRE.' example: libero custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - name - deadline - recurrence - create_task_before_deadline_days '/public/v1/recurring-tasks/{id}': get: summary: 'Get recurring task' operationId: getRecurringTask description: 'This endpoint allows you to get a recurring task.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Recurring Task A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate priority: LOW deadline: '2023-10-01T00:00:00Z' recurrence: FREQ=MONTHLY;INTERVAL=1;BYMONTHDAY=1 create_task_before_deadline_days: 1 folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' assets: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' systems: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' processes: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf customers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' incidents: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' controls: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 data_subject_requests: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf business_functions: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' contracts: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' completion_type: DEFAULT_COMPLETION_FLOW questionnaire_id: null custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Recurring Task A' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate priority: type: string example: LOW deadline: type: string example: '2023-10-01T00:00:00Z' recurrence: type: string example: FREQ=MONTHLY;INTERVAL=1;BYMONTHDAY=1 create_task_before_deadline_days: type: integer example: 1 folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' assets: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Cloud Service Subscription Asset' systems: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'System A' processes: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Process A' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string customers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' incidents: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Incident A' controls: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Control A' identifier: type: string example: 1.1.1 data_subject_requests: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string business_functions: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Business Function A' contracts: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' completion_type: type: string example: DEFAULT_COMPLETION_FLOW description: 'Whenever a recurring task has a custom completion flow, the value returned will be CUSTOM.' enum: - DEFAULT_COMPLETION_FLOW - QUESTIONNAIRE - CUSTOM questionnaire_id: type: string example: null nullable: true custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' required: - completion_type 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - 'Recurring Tasks' delete: summary: 'Delete Recurring Task' operationId: deleteRecurringTask description: 'This endpoint allows you to delete a recurring task.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - 'Recurring Tasks' patch: summary: 'Update recurring task' operationId: updateRecurringTask description: 'This endpoint allows you to update a recurring task.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Recurring Task A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate priority: LOW deadline: '2023-10-01T00:00:00Z' recurrence: FREQ=MONTHLY;INTERVAL=1;BYMONTHDAY=1 create_task_before_deadline_days: 1 folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' assets: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' systems: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' processes: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf customers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' incidents: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' controls: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 data_subject_requests: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf business_functions: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' contracts: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' completion_type: DEFAULT_COMPLETION_FLOW questionnaire_id: null custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Recurring Task A' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate priority: type: string example: LOW deadline: type: string example: '2023-10-01T00:00:00Z' recurrence: type: string example: FREQ=MONTHLY;INTERVAL=1;BYMONTHDAY=1 create_task_before_deadline_days: type: integer example: 1 folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' assets: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Cloud Service Subscription Asset' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Cloud Service Subscription Asset' systems: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'System A' processes: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Process A' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Process A' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string customers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Customer A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Customer A' incidents: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Incident A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Incident A' controls: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Control A' identifier: 1.1.1 items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Control A' identifier: type: string example: 1.1.1 data_subject_requests: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string business_functions: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Business Function A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Business Function A' contracts: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Contract A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Contract A' files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' completion_type: type: string example: DEFAULT_COMPLETION_FLOW description: 'Whenever a recurring task has a custom completion flow, the value returned will be CUSTOM.' enum: - DEFAULT_COMPLETION_FLOW - QUESTIONNAIRE - CUSTOM questionnaire_id: type: string example: null nullable: true custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' required: - completion_type 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - 'Recurring Tasks' requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: 'Must be at least 1 character. Must not be greater than 1024 characters.' example: febhxyi description: type: string description: 'Must be at least 0 characters. Must not be greater than 10485760 characters.' example: 'Cupiditate non occaecati vero quam.' nullable: true priority: type: string description: '' example: LOW enum: - LOW - MEDIUM - HIGH - CRITICAL nullable: true deadline: type: string description: 'The first deadline of the recurring task, in ISO 8601 format' example: libero recurrence: type: string description: 'Follows RFC 5545' example: FREQ=MONTHLY;INTERVAL=1;BYMONTHDAY=1 create_task_before_deadline_days: type: integer description: 'Number of days before the deadline to create the task.' example: 7 folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string suppliers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true assets: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true systems: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true processes: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true customers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true incidents: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true files: type: array description: 'Files regarding recurring task' example: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3ba items: type: string controls: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true data_subject_requests: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true business_functions: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true contracts: type: object description: '' example: null properties: {} completion_type: type: string description: '' example: DEFAULT_COMPLETION_FLOW enum: - DEFAULT_COMPLETION_FLOW - QUESTIONNAIRE nullable: true questionnaire_id: type: string description: 'This field is required when completion_type is QUESTIONNAIRE.' example: libero custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string parameters: - in: path name: id description: 'The UUID of the Recurring Task.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string '/public/v1/recurring-tasks/{id}/tasks': get: summary: 'List tasks for recurring task' operationId: listTasksForRecurringTask description: 'This endpoint allows you to get a paginated list of tasks spawned from a recurring task.' parameters: - in: query name: status_category description: 'Filter by task status category. Case-insensitive.' example: NOT_STARTED required: false schema: type: string description: 'Filter by task status category. Case-insensitive.' example: NOT_STARTED enum: - NOT_STARTED - IN_PROGRESS - COMPLETED - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 incremental_id: 42 name: 'Review Q1 access logs' description: '

Review and verify all access logs...

' status: id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 name: Open category: NOT_STARTED deadline: '2026-05-15' priority: LOW created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' completed_at: null responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/recurring-tasks/d7641fdc-1d5a-4726-8230-c1f8b6f44438/tasks?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 incremental_id: 42 name: 'Review Q1 access logs' description: '

Review and verify all access logs...

' status: id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 name: Open category: NOT_STARTED deadline: '2026-05-15' priority: LOW created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' completed_at: null responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 description: 'The UUID of the task.' incremental_id: type: integer example: 42 description: 'The auto-incrementing numeric ID of the task.' name: type: string example: 'Review Q1 access logs' description: 'The name of the task.' description: type: string example: '

Review and verify all access logs...

' description: 'HTML description of the task, or null if not set.' nullable: true status: type: object properties: id: type: string example: a1b2c3d4-e5f6-7890-abcd-ef0123456789 description: 'The UUID of the status.' name: type: string example: Open description: 'The display name of the status.' category: type: string example: NOT_STARTED enum: - NOT_STARTED - IN_PROGRESS - COMPLETED required: - id - name - category description: 'The current status of the task.' deadline: type: string example: '2026-05-15' description: 'ISO 8601 date (`YYYY-MM-DD`) by which the task should be completed.' priority: type: string example: LOW nullable: true enum: - LOW - MEDIUM - HIGH - CRITICAL created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp when the task was created.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp when the task was last updated.' completed_at: type: string example: null description: 'ISO 8601 timestamp when the task was completed, or `null` if not yet completed.' nullable: true responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users assigned as responsible for the task' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate description: 'The employee roles assigned as responsible for the task' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by entity type, e.g. `{ "risks": ["uuid1", "uuid2"] }`.' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } description: 'Custom field values defined for the task.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - incremental_id - name - description - status - deadline - priority - created_at - updated_at - completed_at - responsible_users - responsible_roles - connections - custom_fields pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/recurring-tasks/d7641fdc-1d5a-4726-8230-c1f8b6f44438/tasks?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - 'Recurring Tasks' parameters: - in: path name: id description: 'The UUID of the Recurring Task.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string /public/v1/roles: get: summary: 'List roles' operationId: listRoles description: 'This endpoint allows you to get a paginated list of roles.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate description: 'All associates' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/roles?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate description: 'All associates' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the role.' title: type: string example: Associate description: 'The title of the role.' description: type: string example: 'All associates' description: 'The description of the role.' nullable: true created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The folders the role belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users associated with the role.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the user.' first_name: type: string example: John description: "The user's first name." last_name: type: string example: Doe description: "The user's last name." nullable: true email: type: string example: john.doe@formalize.com description: "The user's email." required: - id - first_name - last_name - email connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }`.' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } description: 'Custom field values defined for the role.' required: - id - title - description - created_at - updated_at - folders - users - connections - custom_fields pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/roles?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Roles post: summary: 'Create role' operationId: createRole description: 'Creates a role.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate description: 'All associates' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the role.' title: type: string example: Associate description: 'The title of the role.' description: type: string example: 'All associates' description: 'The description of the role.' nullable: true created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The folders the role belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users associated with the role.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the user.' first_name: type: string example: John description: "The user's first name." last_name: type: string example: Doe description: "The user's last name." nullable: true email: type: string example: john.doe@formalize.com description: "The user's email." required: - id - first_name - last_name - email connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }`.' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' required: - title multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' required: - title single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name required: - title required: - title multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name required: - title required: - title date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' required: - title checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true required: - title number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 required: - title url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' required: - title file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' required: - title required: - title description: 'Custom field values defined for the role.' required: - id - title - description - created_at - updated_at - folders - users - connections - custom_fields tags: - Roles requestBody: required: true content: application/json: schema: type: object properties: title: type: string description: 'The title of the role.' example: Associate description: type: string description: 'The description of the role.' example: 'Role description' folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string custom_fields: type: object description: '' example: null properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: null properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a items: type: string required: - title '/public/v1/roles/{id}': get: summary: 'Get role' operationId: getRole description: 'Returns a single role by id.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate description: 'All associates' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the role.' title: type: string example: Associate description: 'The title of the role.' description: type: string example: 'All associates' description: 'The description of the role.' nullable: true created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The folders the role belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users associated with the role.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the user.' first_name: type: string example: John description: "The user's first name." last_name: type: string example: Doe description: "The user's last name." nullable: true email: type: string example: john.doe@formalize.com description: "The user's email." required: - id - first_name - last_name - email connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }`.' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' required: - title multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' required: - title single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name required: - title required: - title multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name required: - title required: - title date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' required: - title checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true required: - title number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 required: - title url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' required: - title file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' required: - title required: - title description: 'Custom field values defined for the role.' required: - id - title - description - created_at - updated_at - folders - users - connections - custom_fields tags: - Roles patch: summary: 'Update role' operationId: updateRole description: 'Updates a role by id.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate description: 'All associates' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the role.' title: type: string example: Associate description: 'The title of the role.' description: type: string example: 'All associates' description: 'The description of the role.' nullable: true created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The folders the role belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users associated with the role.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the user.' first_name: type: string example: John description: "The user's first name." last_name: type: string example: Doe description: "The user's last name." nullable: true email: type: string example: john.doe@formalize.com description: "The user's email." required: - id - first_name - last_name - email connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }`.' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' required: - title multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' required: - title single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name required: - title required: - title multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name required: - title required: - title date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' required: - title checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true required: - title number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 required: - title url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' required: - title file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' required: - title required: - title description: 'Custom field values defined for the role.' required: - id - title - description - created_at - updated_at - folders - users - connections - custom_fields tags: - Roles requestBody: required: false content: application/json: schema: type: object properties: title: type: string description: 'The title of the role.' example: Associate description: type: string description: 'The description of the role.' example: 'Role description' folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string custom_fields: type: object description: '' example: null properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: null properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a items: type: string delete: summary: 'Delete role' operationId: deleteRole description: 'Delete a role.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true tags: - Roles parameters: - in: path name: id description: 'The UUID of the Role.' example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 required: true schema: type: string /public/v1/subject-categories: get: summary: 'List subject categories' operationId: listSubjectCategories description: 'This endpoint allows you to get a paginated list of subject categories.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: Customers pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/subject-categories?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: Customers items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the subject category.' name: type: string example: Customers description: 'The name of the subject category.' required: - id - name pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/subject-categories?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - 'Subject Categories' /public/v1/suppliers: get: summary: 'List suppliers' operationId: listSuppliers description: 'This endpoint allows you to get a paginated list of suppliers.' parameters: - in: query name: updated_after description: 'ISO 8601 timestamp. Only return suppliers with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' required: false schema: type: string description: 'ISO 8601 timestamp. Only return suppliers with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' address: 'Kanikkegade 4, Aarhus C' organization_number: DK12345678 country: DNK notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' contact_person: first_name: John last_name: Doe phone_ext: '+45' phone_number: '11223344' email: support@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/suppliers?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' address: 'Kanikkegade 4, Aarhus C' organization_number: DK12345678 country: DNK notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' contact_person: first_name: John last_name: Doe phone_ext: '+45' phone_number: '11223344' email: support@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the supplier.' incremental_id: type: integer example: 1 description: 'The incremental ID of the supplier.' name: type: string example: 'Supplier A' description: 'The name of the supplier.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' address: type: string example: 'Kanikkegade 4, Aarhus C' description: 'The address of the supplier.' nullable: true organization_number: type: string example: DK12345678 description: 'The organization number of the supplier.' nullable: true country: type: string example: DNK description: 'The country of the supplier as ISO 3166 Alpha-3 code' nullable: true notes: type: string example: 'This is a mega cool note' description: 'The notes related to the supplier.' nullable: true notes_files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' description: 'The files in notes.' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' contact_person: type: object properties: first_name: type: string example: John description: 'The first name of the contact person.' nullable: true last_name: type: string example: Doe description: 'The last name of the contact person.' nullable: true phone_ext: type: string example: '+45' description: 'The phone extension of the contact person.' nullable: true phone_number: type: string example: '11223344' description: 'The phone number of the contact person.' nullable: true email: type: string example: support@formalize.com description: 'The email of the contact person.' nullable: true required: - first_name - last_name - phone_ext - phone_number - email description: 'The contact person from the supplier.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The folders the supplier belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users assigned as responsible for the supplier.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate description: 'The roles assigned as responsible for the supplier.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } description: 'Custom field values defined for the supplier.' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }`.' required: - id - incremental_id - name - created_at - updated_at - address - organization_number - country - notes - notes_files - contact_person - folders - responsible_users - responsible_roles - custom_fields - connections pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/suppliers?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Suppliers post: summary: 'Create supplier' operationId: createSupplier description: 'This endpoint allows you to create a new supplier.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' address: 'Kanikkegade 4, Aarhus C' organization_number: DK12345678 country: DNK notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' contact_person: first_name: John last_name: Doe phone_ext: '+45' phone_number: '11223344' email: support@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the supplier.' incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' description: 'The name of the supplier.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' address: type: string example: 'Kanikkegade 4, Aarhus C' description: 'The address of the supplier.' nullable: true organization_number: type: string example: DK12345678 description: 'The organization number of the supplier.' nullable: true country: type: string example: DNK description: 'The country of the supplier as ISO 3166 Alpha-3 code' nullable: true notes: type: string example: 'This is a mega cool note' description: 'The notes related to the supplier.' nullable: true notes_files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' description: 'The files in notes.' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id - name contact_person: type: object properties: first_name: type: string example: John description: 'The first name of the contact person.' nullable: true last_name: type: string example: Doe description: 'The last name of the contact person.' nullable: true phone_ext: type: string example: '+45' description: 'The phone extension of the contact person.' nullable: true phone_number: type: string example: '11223344' description: 'The phone number of the contact person.' nullable: true email: type: string example: support@formalize.com description: 'The email of the contact person.' nullable: true required: - first_name - last_name - phone_ext - phone_number - email description: 'The contact person from the supplier.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - created_at - updated_at - address - organization_number - country - notes - notes_files - contact_person 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Suppliers requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: 'Google Inc.' address: type: string description: '' example: 'Kannikegade 4, 1, 8000 Aarhus C' organization_number: type: string description: '' example: DK42045136 country: type: string description: 'ISO 3166 Alpha-3 code' example: DNK notes: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Very important for business' notes_files: type: array description: 'Files for notes regarding suppliers' example: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3ba items: type: string contact_person: type: object description: '' example: null properties: first_name: type: string description: '' example: Magnus last_name: type: string description: '' example: Boye phone_ext: type: string description: 'Phone extension defined by E.164' example: '+45' phone_number: type: integer description: 'Phone number defined by E.164.' example: '25932812' email: type: string description: '' example: support@supplier.com folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - name '/public/v1/suppliers/{id}': get: summary: 'Get supplier' operationId: getSupplier description: 'This endpoint allows you to get a single supplier.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' address: 'Kanikkegade 4, Aarhus C' organization_number: DK12345678 country: DNK notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' contact_person: first_name: John last_name: Doe phone_ext: '+45' phone_number: '11223344' email: support@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the supplier.' incremental_id: type: integer example: 1 description: 'The incremental ID of the supplier.' name: type: string example: 'Supplier A' description: 'The name of the supplier.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' address: type: string example: 'Kanikkegade 4, Aarhus C' description: 'The address of the supplier.' nullable: true organization_number: type: string example: DK12345678 description: 'The organization number of the supplier.' nullable: true country: type: string example: DNK description: 'The country of the supplier as ISO 3166 Alpha-3 code' nullable: true notes: type: string example: 'This is a mega cool note' description: 'The notes related to the supplier.' nullable: true notes_files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' description: 'The files in notes.' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id - name contact_person: type: object properties: first_name: type: string example: John description: 'The first name of the contact person.' nullable: true last_name: type: string example: Doe description: 'The last name of the contact person.' nullable: true phone_ext: type: string example: '+45' description: 'The phone extension of the contact person.' nullable: true phone_number: type: string example: '11223344' description: 'The phone number of the contact person.' nullable: true email: type: string example: support@formalize.com description: 'The email of the contact person.' nullable: true required: - first_name - last_name - phone_ext - phone_number - email description: 'The contact person from the supplier.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The folders the supplier belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users assigned as responsible for the supplier.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate description: 'The roles assigned as responsible for the supplier.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' description: 'Custom field values defined for the supplier.' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }`.' required: - id - incremental_id - name - created_at - updated_at - address - organization_number - country - notes - notes_files - contact_person - folders - responsible_users - responsible_roles - custom_fields - connections 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Suppliers patch: summary: 'Update supplier' operationId: updateSupplier description: 'This endpoint allows you to update a supplier.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' address: 'Kanikkegade 4, Aarhus C' organization_number: DK12345678 country: DNK notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' contact_person: first_name: John last_name: Doe phone_ext: '+45' phone_number: '11223344' email: support@formalize.com folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the supplier.' incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' description: 'The name of the supplier.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' address: type: string example: 'Kanikkegade 4, Aarhus C' description: 'The address of the supplier.' nullable: true organization_number: type: string example: DK12345678 description: 'The organization number of the supplier.' nullable: true country: type: string example: DNK description: 'The country of the supplier as ISO 3166 Alpha-3 code' nullable: true notes: type: string example: 'This is a mega cool note' description: 'The notes related to the supplier.' nullable: true notes_files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' description: 'The files in notes.' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id - name contact_person: type: object properties: first_name: type: string example: John description: 'The first name of the contact person.' nullable: true last_name: type: string example: Doe description: 'The last name of the contact person.' nullable: true phone_ext: type: string example: '+45' description: 'The phone extension of the contact person.' nullable: true phone_number: type: string example: '11223344' description: 'The phone number of the contact person.' nullable: true email: type: string example: support@formalize.com description: 'The email of the contact person.' nullable: true required: - first_name - last_name - phone_ext - phone_number - email description: 'The contact person from the supplier.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - created_at - updated_at - address - organization_number - country - notes - notes_files - contact_person 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Suppliers requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: '' example: 'Google Inc.' address: type: string description: '' example: 'Kannikegade 4, 1, 8000 Aarhus C' organization_number: type: string description: '' example: DK42045136 country: type: string description: 'ISO 3166 Alpha-3 code' example: DNK notes: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Very important for business' notes_files: type: array description: 'Files for notes regarding suppliers' example: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3ba items: type: string contact_person: type: object description: '' example: null properties: first_name: type: string description: '' example: Magnus last_name: type: string description: '' example: Boye phone_ext: type: string description: 'Phone extension defined by E.164' example: '+45' phone_number: type: integer description: 'Phone number defined by E.164.' example: '25932812' email: type: string description: '' example: support@supplier.com folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string delete: summary: 'Delete supplier' operationId: deleteSupplier description: 'This endpoint allows you to delete a supplier.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Suppliers parameters: - in: path name: id description: 'The UUID of the supplier.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string /public/v1/systems: get: summary: 'List systems' operationId: listSystems description: 'This endpoint allows you to get a paginated list of systems.' parameters: - in: query name: updated_after description: 'ISO 8601 timestamp. Only return systems with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' required: false schema: type: string description: 'ISO 8601 timestamp. Only return systems with a recorded change after this time. Has to be at least 30 mins in the past.' example: '2026-09-17T00:00:00' - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' countries: - DNK - AUT notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/systems?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' countries: - DNK - AUT notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the System.' incremental_id: type: integer example: 1 description: 'The incremental ID of the System.' name: type: string example: 'System A' description: 'The name of the System.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' description: 'The suppliers connected to the system.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' countries: type: array example: - DNK - AUT description: 'The countries associated with the system as ISO 3166 Alpha-3 code' items: type: string notes: type: string example: 'This is a mega cool note' notes_files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The folders the system belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users assigned as responsible for the system.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate description: 'The roles assigned as responsible for the system.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } description: 'Custom field values defined for the system.' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }`.' required: - id - incremental_id - name - created_at - updated_at - suppliers - countries - folders - responsible_users - responsible_roles - custom_fields - connections pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/systems?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Systems post: summary: 'Create system' operationId: createSystem description: 'This endpoint allows you to create a new system.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' countries: - DNK - AUT notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the system.' incremental_id: type: integer example: 1 name: type: string example: 'System A' description: 'The name of the system.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' required: - id - name countries: type: array example: - DNK - AUT description: 'The countries associated with the system as ISO 3166 Alpha-3 code' items: type: string notes: type: string example: 'This is a mega cool note' notes_files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id - name folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - created_at - updated_at - countries 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Systems requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: 'System A' folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string suppliers: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true countries: type: array description: 'ISO 3166 Alpha-3 code' example: - DNK - AUT items: type: string notes: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Very important for business' notes_files: type: array description: 'Files for notes regarding system' example: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3ba items: type: string custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - name '/public/v1/systems/{id}': get: summary: 'Get systems' operationId: getSystems description: 'This endpoint allows you to get a single system.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' countries: - DNK - AUT notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the System.' incremental_id: type: integer example: 1 description: 'The incremental ID of the System.' name: type: string example: 'System A' description: 'The name of the System.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' description: 'The suppliers connected to the system.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' required: - id - incremental_id - name countries: type: array example: - DNK - AUT description: 'The countries associated with the system as ISO 3166 Alpha-3 code' items: type: string notes: type: string example: 'This is a mega cool note' notes_files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id - name folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' description: 'The folders the system belongs to.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users assigned as responsible for the system.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate description: 'The roles assigned as responsible for the system.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' description: 'Custom field values defined for the system.' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }`.' required: - id - incremental_id - name - created_at - updated_at - suppliers - countries - folders - responsible_users - responsible_roles - custom_fields - connections tags: - Systems patch: summary: 'Update system' operationId: updateSystem description: 'This endpoint allows you to update a system.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'System A' created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' suppliers: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' countries: - DNK - AUT notes: 'This is a mega cool note' notes_files: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the system.' incremental_id: type: integer example: 1 name: type: string example: 'System A' description: 'The name of the system.' created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp.' suppliers: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: 1 name: 'Supplier A' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a incremental_id: type: integer example: 1 name: type: string example: 'Supplier A' required: - id - name countries: type: array example: - DNK - AUT items: type: string notes: type: string example: 'This is a mega cool note' notes_files: type: array example: - id: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: file1.pdf url: 'https://generated-download-url.com/file1.pdf' items: type: object properties: id: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf name: type: string example: file1.pdf url: type: string example: 'https://generated-download-url.com/file1.pdf' required: - id - name folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string required: - id - name - created_at - updated_at 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string tags: - Systems requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: '' example: 'System A' folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string suppliers: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string assets: type: array description: '**Deprecated** -- Use the connections body parameter instead' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string deprecated: true notes: type: string description: 'HTML is allowed. The following tags are supported: ' example: 'Very important for business' notes_files: type: array description: 'Files for notes regarding system' example: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3ba items: type: string countries: type: array description: 'ISO 3166 Alpha-3 code' example: - DNK - AUT items: type: string custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string delete: summary: 'Delete System' operationId: deleteSystem description: 'This endpoint allows you to delete a system.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Systems parameters: - in: path name: id description: 'The UUID of the System.' example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a required: true schema: type: string /public/v1/task-statuses: get: summary: 'List task statuses' operationId: listTaskStatuses description: 'This endpoint allows you to get a paginated list of task statuses.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 name: Open category: NOT_STARTED pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/task-statuses?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 name: Open category: NOT_STARTED items: type: object properties: id: type: string example: a1b2c3d4-e5f6-7890-abcd-ef0123456789 description: 'The UUID of the task status.' name: type: string example: Open description: 'The display name of the task status.' category: type: string example: NOT_STARTED enum: - NOT_STARTED - IN_PROGRESS - COMPLETED required: - id - name - category pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/task-statuses?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - 'Task Statuses' /public/v1/tasks: get: summary: 'List tasks' operationId: listTasks description: 'This endpoint allows you to get a paginated list of tasks.' parameters: - in: query name: status_category description: 'Filter by task status category. Case-insensitive.' example: NOT_STARTED required: false schema: type: string description: 'Filter by task status category. Case-insensitive.' example: NOT_STARTED enum: - NOT_STARTED - IN_PROGRESS - COMPLETED - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 incremental_id: 42 name: 'Review Q1 access logs' description: '

Review and verify all access logs...

' status: id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 name: Open category: NOT_STARTED deadline: '2026-05-15' priority: LOW created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' completed_at: null responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/tasks?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 incremental_id: 42 name: 'Review Q1 access logs' description: '

Review and verify all access logs...

' status: id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 name: Open category: NOT_STARTED deadline: '2026-05-15' priority: LOW created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' completed_at: null responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 description: 'The UUID of the task.' incremental_id: type: integer example: 42 description: 'The auto-incrementing numeric ID of the task.' name: type: string example: 'Review Q1 access logs' description: 'The name of the task.' description: type: string example: '

Review and verify all access logs...

' description: 'HTML description of the task, or null if not set.' nullable: true status: type: object properties: id: type: string example: a1b2c3d4-e5f6-7890-abcd-ef0123456789 description: 'The UUID of the status.' name: type: string example: Open description: 'The display name of the status.' category: type: string example: NOT_STARTED enum: - NOT_STARTED - IN_PROGRESS - COMPLETED required: - id - name - category description: 'The current status of the task.' deadline: type: string example: '2026-05-15' description: 'ISO 8601 date (`YYYY-MM-DD`) by which the task should be completed.' priority: type: string example: LOW nullable: true enum: - LOW - MEDIUM - HIGH - CRITICAL created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp when the task was created.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp when the task was last updated.' completed_at: type: string example: null description: 'ISO 8601 timestamp when the task was completed, or `null` if not yet completed.' nullable: true responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users assigned as responsible for the task' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate description: 'The employee roles assigned as responsible for the task' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: { type: string, example: 'Option 1 title' } value: { type: string, example: option-internal-name } date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: { type: string, example: file-name1.png } value: { type: string, example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf } url: { type: string, example: 'https://generated-download-url.com/file-name1.png' } description: 'Custom field values defined for the task.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - incremental_id - name - description - status - deadline - priority - created_at - updated_at - completed_at - responsible_users - responsible_roles - connections - custom_fields pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/tasks?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Tasks post: summary: 'Create task' operationId: createTask description: 'This endpoint allows you to create a new single task.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 incremental_id: 42 name: 'Review Q1 access logs' description: '

Review and verify all access logs...

' status: id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 name: Open category: NOT_STARTED deadline: '2026-05-15' priority: LOW created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' completed_at: null responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' properties: id: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 description: 'The UUID of the task.' incremental_id: type: integer example: 42 description: 'The auto-incrementing numeric ID of the task.' name: type: string example: 'Review Q1 access logs' description: 'The name of the task.' description: type: string example: '

Review and verify all access logs...

' description: 'HTML description of the task, or null if not set.' nullable: true status: type: object properties: id: type: string example: a1b2c3d4-e5f6-7890-abcd-ef0123456789 description: 'The UUID of the status.' name: type: string example: Open description: 'The display name of the status.' category: type: string example: NOT_STARTED enum: - NOT_STARTED - IN_PROGRESS - COMPLETED required: - id - name - category description: 'The current status of the task.' deadline: type: string example: '2026-05-15' description: 'ISO 8601 date (`YYYY-MM-DD`) by which the task should be completed.' priority: type: string example: LOW nullable: true enum: - LOW - MEDIUM - HIGH - CRITICAL created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp when the task was created.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp when the task was last updated.' completed_at: type: string example: null description: 'ISO 8601 timestamp when the task was completed, or `null` if not yet completed.' nullable: true responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users assigned as responsible for the task.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate description: 'The employee roles assigned as responsible for the task.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' description: 'Custom field values defined for the task.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name required: - id - incremental_id - name - description - status - deadline - priority - created_at - updated_at - completed_at - responsible_users - responsible_roles - connections - custom_fields 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 description: 'The current status of the task.' title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string required: - status tags: - Tasks requestBody: required: true content: application/json: schema: type: object properties: name: type: string description: '' example: 'Review Q1 access logs' description: type: string description: 'HTML description of the task.' example: '

Review and verify all access logs for Q1 2026.

' deadline: type: string description: 'ISO 8601 date (`YYYY-MM-DD`). Defaults to today if omitted.' example: '2026-05-15' priority: type: string description: '' example: LOW enum: - LOW - MEDIUM - HIGH - CRITICAL folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a items: type: string required: - name '/public/v1/tasks/{id}': get: summary: 'Get task' operationId: getTask description: 'This endpoint allows you to get a single task.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 incremental_id: 42 name: 'Review Q1 access logs' description: '

Review and verify all access logs...

' status: id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 name: Open category: NOT_STARTED deadline: '2026-05-15' priority: LOW created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' completed_at: null responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' properties: id: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 description: 'The UUID of the task.' incremental_id: type: integer example: 42 description: 'The auto-incrementing numeric ID of the task.' name: type: string example: 'Review Q1 access logs' description: 'The name of the task.' description: type: string example: '

Review and verify all access logs...

' description: 'HTML description of the task, or null if not set.' nullable: true status: type: object properties: id: type: string example: a1b2c3d4-e5f6-7890-abcd-ef0123456789 description: 'The UUID of the status.' name: type: string example: Open description: 'The display name of the status.' category: type: string example: NOT_STARTED enum: - NOT_STARTED - IN_PROGRESS - COMPLETED required: - id - name - category description: 'The current status of the task.' deadline: type: string example: '2026-05-15' description: 'ISO 8601 date (`YYYY-MM-DD`) by which the task should be completed.' priority: type: string example: LOW nullable: true enum: - LOW - MEDIUM - HIGH - CRITICAL created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp when the task was created.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp when the task was last updated.' completed_at: type: string example: null description: 'ISO 8601 timestamp when the task was completed, or `null` if not yet completed.' nullable: true responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users assigned as responsible for the task' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate description: 'The employee roles assigned as responsible for the task' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' description: 'Custom field values defined for the task.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name required: - id - incremental_id - name - description - status - deadline - priority - created_at - updated_at - completed_at - responsible_users - responsible_roles - connections - custom_fields 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 description: 'The current status of the task.' title: type: string example: 'Entity not found' required: - status tags: - Tasks patch: summary: 'Update task' operationId: updateTask description: 'This endpoint allows you to partially update a single task and its relations.' parameters: [] responses: 200: description: '' content: application/json: schema: type: object example: id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 incremental_id: 42 name: 'Review Q1 access logs' description: '

Review and verify all access logs...

' status: id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 name: Open category: NOT_STARTED deadline: '2026-05-15' priority: LOW created_at: '2026-04-20T10:00:00+00:00' updated_at: '2026-04-20T14:30:00+00:00' completed_at: null responsible_users: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com responsible_roles: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate connections: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf custom_fields: single-text-question-internal-name: title: 'Text title' value: 'This is a text answer' multi-text-question-internal-name: title: 'Multitext title' value: 'This is a multitext answer' single-select-question-internal-name: title: 'Single select title' value: title: 'Option title' value: option-internal-name multi-select-question-internal-name: title: 'Multi select title' value: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name date-question-internal-name: title: 'Date title' value: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: title: 'Checkbox title' value: true number-question-internal-name: title: 'Checkbox title' value: 123.45 url-question-internal-name: title: 'URL title' value: 'https://formalize.com' file-question-internal-name: title: 'File question title' value: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' folders: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' properties: id: type: string example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 description: 'The UUID of the task.' incremental_id: type: integer example: 42 description: 'The auto-incrementing numeric ID of the task.' name: type: string example: 'Review Q1 access logs' description: 'The name of the task.' description: type: string example: '

Review and verify all access logs...

' description: 'HTML description of the task, or null if not set.' nullable: true status: type: object properties: id: type: string example: a1b2c3d4-e5f6-7890-abcd-ef0123456789 description: 'The UUID of the status.' name: type: string example: Open description: 'The display name of the status.' category: type: string example: NOT_STARTED enum: - NOT_STARTED - IN_PROGRESS - COMPLETED required: - id - name - category description: 'The current status of the task.' deadline: type: string example: '2026-05-15' description: 'ISO 8601 date (`YYYY-MM-DD`) by which the task should be completed.' priority: type: string example: LOW nullable: true enum: - LOW - MEDIUM - HIGH - CRITICAL created_at: type: string example: '2026-04-20T10:00:00+00:00' description: 'ISO 8601 timestamp when the task was created.' updated_at: type: string example: '2026-04-20T14:30:00+00:00' description: 'ISO 8601 timestamp when the task was last updated.' completed_at: type: string example: null description: 'ISO 8601 timestamp when the task was completed, or `null` if not yet completed.' nullable: true responsible_users: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com description: 'The users assigned as responsible for the task.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: type: string example: John last_name: type: string example: Doe email: type: string example: john.doe@formalize.com required: - id responsible_roles: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: Associate description: 'The employee roles assigned as responsible for the task.' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a title: type: string example: Associate required: - id connections: type: object properties: connection-type-internal-name: type: array example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf items: type: string description: 'Connected entities grouped by the internal name, e.g. `{ "risks-I3Js2ZAKc": ["uuid1", "uuid2"] }' custom_fields: type: object properties: single-text-question-internal-name: type: object properties: title: type: string example: 'Text title' value: type: string example: 'This is a text answer' multi-text-question-internal-name: type: object properties: title: type: string example: 'Multitext title' value: type: string example: 'This is a multitext answer' single-select-question-internal-name: type: object properties: title: type: string example: 'Single select title' value: type: object properties: title: type: string example: 'Option title' value: type: string example: option-internal-name multi-select-question-internal-name: type: object properties: title: type: string example: 'Multi select title' value: type: array example: - title: 'Option 1 title' value: option-internal-name - title: 'Option 2 title' value: option-internal-name items: type: object properties: title: type: string example: 'Option 1 title' value: type: string example: option-internal-name date-question-internal-name: type: object properties: title: type: string example: 'Date title' value: type: string example: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: boolean example: true number-question-internal-name: type: object properties: title: type: string example: 'Checkbox title' value: type: number example: 123.45 url-question-internal-name: type: object properties: title: type: string example: 'URL title' value: type: string example: 'https://formalize.com' file-question-internal-name: type: object properties: title: type: string example: 'File question title' value: type: array example: - title: file-name1.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name1.png' - title: file-name2.png value: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: 'https://generated-download-url.com/file-name2.png' items: type: object properties: title: type: string example: file-name1.png value: type: string example: f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf url: type: string example: 'https://generated-download-url.com/file-name1.png' description: 'Custom field values defined for the task.' folders: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: 'Lorem ipsum' items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a name: type: string example: 'Lorem ipsum' required: - id - name required: - id - incremental_id - name - description - status - deadline - priority - created_at - updated_at - completed_at - responsible_users - responsible_roles - connections - custom_fields 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 description: 'The current status of the task.' title: type: string example: 'Entity not found' required: - status 409: description: '' content: application/json: schema: type: object example: status: 409 title: Conflict errors: - 'Acceptances can only be synced on a published version.' properties: status: type: integer example: 409 description: 'The current status of the task.' title: type: string example: Conflict errors: type: array example: - 'Acceptances can only be synced on a published version.' items: type: string required: - status 422: description: '' content: application/json: schema: type: object example: status: 422 title: 'Validation error' errors: X: - 'The X field is required,' 'Y': - 'The Y attribute should be an array,' properties: status: type: integer example: 422 description: 'The current status of the task.' title: type: string example: 'Validation error' errors: type: object properties: X: type: array example: - 'The X field is required,' items: type: string 'Y': type: array example: - 'The Y attribute should be an array,' items: type: string required: - status tags: - Tasks requestBody: required: false content: application/json: schema: type: object properties: name: type: string description: '' example: 'Review Q1 access logs' description: type: string description: 'HTML description of the task.' example: '

Description.

' deadline: type: string description: 'ISO 8601 date (`YYYY-MM-DD`).' example: '2026-06-01' priority: type: string description: '' example: LOW enum: - LOW - MEDIUM - HIGH - CRITICAL status_id: type: string description: "The UUID of the new task status. When it belongs to the `COMPLETED` category, `completed_at` defaults to server time and `completion_user_id` defaults to the API token's associated user." example: b2c3d4e5-f6a7-8901-bcde-f01234567890 status_category: type: string description: 'Alias for changing the status of a task - will pick the first status in the selected category.' example: NOT_STARTED enum: - NOT_STARTED - IN_PROGRESS - COMPLETED completed_at: type: string description: 'ISO 8601 timestamp. Only used when transitioning to a `COMPLETED`-category status; provide a past timestamp when syncing completions from external systems.' example: '2026-05-15T14:30:00Z' folders: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_users: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string responsible_roles: type: array description: '' example: - f918d2e5-707f-46f3-88d4-fa5bfb4be6ea - d22a615b-2644-4d75-97b7-6499022dc075 items: type: string custom_fields: type: object description: '' example: single-text-question-internal-name: 'This is a text answer' multi-text-question-internal-name: 'This is a multitext answer' single-select-question-internal-name: option-internal-name multi-select-question-internal-name: - option-internal-name - option-internal-name date-question-internal-name: '2024-01-01T06:00:00+00:00' checkbox-question-internal-name: true number-question-internal-name: 123.45 url-question-internal-name: 'https://formalize.com' file-question-internal-name: - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bd properties: key: type: string description: 'Internal name for the custom field.' example: libero value: type: 'string|string[]|null|float|int' description: 'Response to the custom field.' example: libero connections: type: object description: '' example: connection-type-internal-name: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a - f35d4243-4a44-4c10-bf7d-4d11c5cbc3bf properties: key: type: string description: 'Internal name for the connection type.' example: libero value: type: array description: 'UUIDs for the entities to connect.' example: - 9940ebb1-25db-41d8-9650-a9f39ee55d1a items: type: string delete: summary: 'Delete task' operationId: deleteTask description: 'This endpoint allows you to delete a single task.' parameters: [] responses: 204: description: '' content: application/json: schema: type: object nullable: true 404: description: '' content: application/json: schema: type: object example: status: 404 title: 'Entity not found' properties: status: type: integer example: 404 title: type: string example: 'Entity not found' tags: - Tasks parameters: - in: path name: id description: 'The UUID of the task.' example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 required: true schema: type: string /public/v1/users: get: summary: 'List users' operationId: listUsers description: 'This endpoint allows you to get a paginated list of users.' parameters: - in: query name: page description: 'The page number to get. Default = 1' example: 12 required: false schema: type: integer description: 'The page number to get. Default = 1' example: 12 - in: query name: page_size description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 required: false schema: type: integer description: 'The number of items per page. Default = 10. Maximum = 200' example: 12 responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com pagination: current_page: 1 from: 1 last_page: 1 links: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/users?page=1' label: '1' active: true - url: null label: Next active: false per_page: 10 to: 1 total: 1 properties: data: type: array example: - id: 9940ebb1-25db-41d8-9650-a9f39ee55d1a first_name: John last_name: Doe email: john.doe@formalize.com items: type: object properties: id: type: string example: 9940ebb1-25db-41d8-9650-a9f39ee55d1a description: 'The UUID of the user.' first_name: type: string example: John description: 'The first name of the user.' last_name: type: string example: Doe description: 'The last name of the user.' email: type: string example: john.doe@formalize.com description: 'The email of the user.' required: - id - first_name - last_name - email pagination: type: object properties: current_page: type: integer example: 1 description: 'The number of the page that this response gives.' from: type: integer example: 1 description: 'The number of the first item on the page. It is null when the page is empty.' nullable: true last_page: type: integer example: 1 description: 'The number of the last page.' links: type: array example: - url: null label: Previous active: false - url: 'https://api.formalize.com/public/v1/users?page=1' label: '1' active: true - url: null label: Next active: false description: 'One link for the previous page, one link for each page, and one link for the next page.' items: type: object properties: url: type: string example: null description: 'The URL of the page. It is null when the page does not exist.' nullable: true label: type: string example: Previous description: 'The name of the link: `Previous`, `Next`, or the number of the page.' active: type: boolean example: false description: 'True when the link gives the page that this response gives.' required: - url - label - active per_page: type: integer example: 10 description: 'The maximum number of items on each page.' to: type: integer example: 1 description: 'The number of the last item on the page. It is null when the page is empty.' nullable: true total: type: integer example: 1 description: 'The number of items in all the pages.' required: - current_page - from - last_page - links - per_page - to - total tags: - Users