{"openapi":"3.1.0","info":{"title":"Coevera CRM API","version":"v100","description":"The REST API of the Coevera CRM. Every entity of a space (accounts, contacts, leads, opportunities, activities, products, quotes and the rest) has the same endpoints: list, create, get, update and delete, plus batch create-or-update, batch delete and batch restore. Accounts and contacts can also be merged.\n\nAuthenticate with the user name and password of an API application (HTTP Basic). Requests and responses are JSON. The base URL carries your region and space ID; the app shows both under Show Access, and the discovery endpoint returns them.\n\nThis document describes the standard data model. Your own space's spec, with its custom fields and custom entities, is served at `GET /api/v100/rest/spaces/{space_id}/openapi.json` with your credentials.\n\nGuides, recipes and the full reference: https://developers.coevera.com/","contact":{"name":"Coevera Developers","url":"https://developers.coevera.com/"}},"paths":{"/entities/Accounts/{id}":{"get":{"description":"Returns one account by id. `expand` returns related records inline instead of their URIs.","operationId":"Accounts.get","summary":"Get an account","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the Account record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Account record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Account"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Soft-deletes one account and answers with its id. A deleted account can be brought back with batch-restore.","operationId":"Accounts.delete","summary":"Delete an account","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the Account record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes the fields you send and leaves the rest as they are; there is no PUT. An `id` in the body that differs from the one in the URL is refused with code 2002.","parameters":[{"name":"id","in":"path","description":"Id of the Account record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Accounts.update","summary":"Update an account","tags":["Account"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAccountInput"}}}},"responses":{"200":{"description":"The changed Account record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Account"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Accounts":{"get":{"description":"Returns the accounts the API application can read, one page at a time. In the list envelope, `total` counts every match; page forward with `after` set to `page_info.end_cursor` until `has_next_page` is false.","operationId":"Accounts.list","summary":"List accounts","tags":["Account"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Account records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Account"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates one account and answers 201 with the record. `name` and `owner_id` are required; relations are set by id (`owner_id`, `unit_id`, `account_type_id`).","operationId":"Accounts.create","summary":"Create an account","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAccountInput"},"example":{"name":"Northwind Analytics","owner_id":"37000000-0000-4000-a000-000000000001","email1":"northwind@example.com","phone1":"+1 555 0100","city":"Seattle","country":"United States"}}}},"responses":{"201":{"description":"The created Account record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Account"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Accounts/merge":{"post":{"description":"Merges duplicates into one account. `master` is the account to keep, with any field values to keep; the accounts in `secondary_ids` are merged into it and their relations move to it.","operationId":"Accounts.merge","summary":"Merge accounts","tags":["Account"],"parameters":[],"requestBody":{"description":"Master record and the records to merge into it.","required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"master":{"$ref":"#/components/schemas/batchAccountInput"},"secondary_ids":{"type":"array","description":"Ids of the records to merge into the master record.","items":{"type":"string","description":"Id of a record to merge.","format":"uuid"}}}}}}},"responses":{"200":{"description":"The merged master record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Account"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Accounts/batch-delete":{"post":{"description":"Soft-deletes the accounts whose ids are in the body, a JSON array. By default an unknown id fails the whole call with HTTP 404.","operationId":"Accounts.batch_delete","summary":"Delete accounts in a batch","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Accounts/batch-modify":{"post":{"description":"An item with an `id` updates that account; an item without one creates an account. By default one invalid item fails the whole call with HTTP 422 and nothing is written; with `rollback-method=1` the valid items are written and the response has an id or an error for each item, in input order.","operationId":"Accounts.batch_create_or_update","summary":"Create or update accounts in a batch","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAccountInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Accounts/batch-restore":{"post":{"description":"Restores the soft-deleted accounts whose ids are in the body, a JSON array.","operationId":"Accounts.batch_restore","summary":"Restore deleted accounts","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountDataExRelations/{id}":{"get":{"description":"Returns the AccountDataExRelation record with the given id.","operationId":"AccountDataExRelations.get","summary":"AccountDataExRelations.get","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountDataExRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AccountDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountDataExRelations":{"get":{"description":"Returns a page of AccountDataExRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"AccountDataExRelations.list","summary":"AccountDataExRelations.list","tags":["Account"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AccountDataExRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AccountDataExRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountKPIs/{id}":{"get":{"description":"Returns the AccountKPI record with the given id.","operationId":"AccountKPIs.get","summary":"AccountKPIs.get","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountKPI record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AccountKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AccountKPI record with the given id.","operationId":"AccountKPIs.delete","summary":"AccountKPIs.delete","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountKPI record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AccountKPI record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AccountKPI record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AccountKPIs.update","summary":"AccountKPIs.update","tags":["Account"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAccountKPIInput"}}}},"responses":{"200":{"description":"The changed AccountKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountKPIs":{"get":{"description":"Returns a page of AccountKPI records, optionally filtered, sorted and limited to selected fields.","operationId":"AccountKPIs.list","summary":"AccountKPIs.list","tags":["Account"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AccountKPI records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AccountKPI"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AccountKPI record.","operationId":"AccountKPIs.create","summary":"AccountKPIs.create","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAccountKPIInput"}}}},"responses":{"201":{"description":"The created AccountKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountKPIs/batch-delete":{"post":{"description":"Deletes the AccountKPI records with the given ids.","operationId":"AccountKPIs.batch_delete","summary":"AccountKPIs.batch_delete","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountKPIs/batch-modify":{"post":{"description":"Creates or updates AccountKPI records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AccountKPIs.batch_create_or_update","summary":"AccountKPIs.batch_create_or_update","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAccountKPIInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountKPIs/batch-restore":{"post":{"description":"Restores the deleted AccountKPI records with the given ids.","operationId":"AccountKPIs.batch_restore","summary":"AccountKPIs.batch_restore","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountProductPricings/{id}":{"get":{"description":"Returns the AccountProductPricing record with the given id.","operationId":"AccountProductPricings.get","summary":"AccountProductPricings.get","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountProductPricing record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AccountProductPricing record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountProductPricing"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AccountProductPricing record with the given id.","operationId":"AccountProductPricings.delete","summary":"AccountProductPricings.delete","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountProductPricing record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AccountProductPricing record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AccountProductPricing record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AccountProductPricings.update","summary":"AccountProductPricings.update","tags":["Account"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAccountProductPricingInput"}}}},"responses":{"200":{"description":"The changed AccountProductPricing record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountProductPricing"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountProductPricings":{"get":{"description":"Returns a page of AccountProductPricing records, optionally filtered, sorted and limited to selected fields.","operationId":"AccountProductPricings.list","summary":"AccountProductPricings.list","tags":["Account"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AccountProductPricing records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AccountProductPricing"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AccountProductPricing record.","operationId":"AccountProductPricings.create","summary":"AccountProductPricings.create","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAccountProductPricingInput"}}}},"responses":{"201":{"description":"The created AccountProductPricing record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountProductPricing"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountProductPricings/batch-delete":{"post":{"description":"Deletes the AccountProductPricing records with the given ids.","operationId":"AccountProductPricings.batch_delete","summary":"AccountProductPricings.batch_delete","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountProductPricings/batch-modify":{"post":{"description":"Creates or updates AccountProductPricing records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AccountProductPricings.batch_create_or_update","summary":"AccountProductPricings.batch_create_or_update","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAccountProductPricingInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountProductPricings/batch-restore":{"post":{"description":"Restores the deleted AccountProductPricing records with the given ids.","operationId":"AccountProductPricings.batch_restore","summary":"AccountProductPricings.batch_restore","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelations/{id}":{"get":{"description":"Returns the AccountRelation record with the given id.","operationId":"AccountRelations.get","summary":"AccountRelations.get","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AccountRelation record with the given id.","operationId":"AccountRelations.delete","summary":"AccountRelations.delete","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AccountRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AccountRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AccountRelations.update","summary":"AccountRelations.update","tags":["Account"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAccountRelationInput"}}}},"responses":{"200":{"description":"The changed AccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelations":{"get":{"description":"Returns a page of AccountRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"AccountRelations.list","summary":"AccountRelations.list","tags":["Account"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AccountRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AccountRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AccountRelation record.","operationId":"AccountRelations.create","summary":"AccountRelations.create","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAccountRelationInput"}}}},"responses":{"201":{"description":"The created AccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelations/batch-delete":{"post":{"description":"Deletes the AccountRelation records with the given ids.","operationId":"AccountRelations.batch_delete","summary":"AccountRelations.batch_delete","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelations/batch-modify":{"post":{"description":"Creates or updates AccountRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AccountRelations.batch_create_or_update","summary":"AccountRelations.batch_create_or_update","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAccountRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelations/batch-restore":{"post":{"description":"Restores the deleted AccountRelation records with the given ids.","operationId":"AccountRelations.batch_restore","summary":"AccountRelations.batch_restore","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelationLabels/{id}":{"get":{"description":"Returns the AccountRelationLabel record with the given id.","operationId":"AccountRelationLabels.get","summary":"AccountRelationLabels.get","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountRelationLabel record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AccountRelationLabel record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountRelationLabel"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AccountRelationLabel record with the given id.","operationId":"AccountRelationLabels.delete","summary":"AccountRelationLabels.delete","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountRelationLabel record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AccountRelationLabel record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AccountRelationLabel record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AccountRelationLabels.update","summary":"AccountRelationLabels.update","tags":["Account"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAccountRelationLabelInput"}}}},"responses":{"200":{"description":"The changed AccountRelationLabel record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountRelationLabel"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelationLabels":{"get":{"description":"Returns a page of AccountRelationLabel records, optionally filtered, sorted and limited to selected fields.","operationId":"AccountRelationLabels.list","summary":"AccountRelationLabels.list","tags":["Account"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AccountRelationLabel records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AccountRelationLabel"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AccountRelationLabel record.","operationId":"AccountRelationLabels.create","summary":"AccountRelationLabels.create","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAccountRelationLabelInput"}}}},"responses":{"201":{"description":"The created AccountRelationLabel record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountRelationLabel"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelationLabels/batch-delete":{"post":{"description":"Deletes the AccountRelationLabel records with the given ids.","operationId":"AccountRelationLabels.batch_delete","summary":"AccountRelationLabels.batch_delete","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelationLabels/batch-modify":{"post":{"description":"Creates or updates AccountRelationLabel records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AccountRelationLabels.batch_create_or_update","summary":"AccountRelationLabels.batch_create_or_update","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAccountRelationLabelInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelationLabels/batch-restore":{"post":{"description":"Restores the deleted AccountRelationLabel records with the given ids.","operationId":"AccountRelationLabels.batch_restore","summary":"AccountRelationLabels.batch_restore","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelationTypes/{id}":{"get":{"description":"Returns the AccountRelationType record with the given id.","operationId":"AccountRelationTypes.get","summary":"AccountRelationTypes.get","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountRelationType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AccountRelationType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountRelationType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AccountRelationType record with the given id.","operationId":"AccountRelationTypes.delete","summary":"AccountRelationTypes.delete","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountRelationType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AccountRelationType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AccountRelationType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AccountRelationTypes.update","summary":"AccountRelationTypes.update","tags":["Account"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAccountRelationTypeInput"}}}},"responses":{"200":{"description":"The changed AccountRelationType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountRelationType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelationTypes":{"get":{"description":"Returns a page of AccountRelationType records, optionally filtered, sorted and limited to selected fields.","operationId":"AccountRelationTypes.list","summary":"AccountRelationTypes.list","tags":["Account"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AccountRelationType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AccountRelationType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AccountRelationType record.","operationId":"AccountRelationTypes.create","summary":"AccountRelationTypes.create","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAccountRelationTypeInput"}}}},"responses":{"201":{"description":"The created AccountRelationType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountRelationType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelationTypes/batch-delete":{"post":{"description":"Deletes the AccountRelationType records with the given ids.","operationId":"AccountRelationTypes.batch_delete","summary":"AccountRelationTypes.batch_delete","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelationTypes/batch-modify":{"post":{"description":"Creates or updates AccountRelationType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AccountRelationTypes.batch_create_or_update","summary":"AccountRelationTypes.batch_create_or_update","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAccountRelationTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRelationTypes/batch-restore":{"post":{"description":"Restores the deleted AccountRelationType records with the given ids.","operationId":"AccountRelationTypes.batch_restore","summary":"AccountRelationTypes.batch_restore","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRoles/{id}":{"get":{"description":"Returns the AccountRole record with the given id.","operationId":"AccountRoles.get","summary":"AccountRoles.get","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountRole record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AccountRole record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountRole"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AccountRole record with the given id.","operationId":"AccountRoles.delete","summary":"AccountRoles.delete","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountRole record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AccountRole record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AccountRole record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AccountRoles.update","summary":"AccountRoles.update","tags":["Account"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAccountRoleInput"}}}},"responses":{"200":{"description":"The changed AccountRole record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountRole"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRoles":{"get":{"description":"Returns a page of AccountRole records, optionally filtered, sorted and limited to selected fields.","operationId":"AccountRoles.list","summary":"AccountRoles.list","tags":["Account"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AccountRole records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AccountRole"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AccountRole record.","operationId":"AccountRoles.create","summary":"AccountRoles.create","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAccountRoleInput"}}}},"responses":{"201":{"description":"The created AccountRole record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountRole"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRoles/batch-delete":{"post":{"description":"Deletes the AccountRole records with the given ids.","operationId":"AccountRoles.batch_delete","summary":"AccountRoles.batch_delete","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRoles/batch-modify":{"post":{"description":"Creates or updates AccountRole records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AccountRoles.batch_create_or_update","summary":"AccountRoles.batch_create_or_update","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAccountRoleInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountRoles/batch-restore":{"post":{"description":"Restores the deleted AccountRole records with the given ids.","operationId":"AccountRoles.batch_restore","summary":"AccountRoles.batch_restore","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSharingClientRelations/{id}":{"get":{"description":"Returns the AccountSharingClientRelation record with the given id.","operationId":"AccountSharingClientRelations.get","summary":"AccountSharingClientRelations.get","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountSharingClientRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AccountSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AccountSharingClientRelation record with the given id.","operationId":"AccountSharingClientRelations.delete","summary":"AccountSharingClientRelations.delete","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountSharingClientRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AccountSharingClientRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AccountSharingClientRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AccountSharingClientRelations.update","summary":"AccountSharingClientRelations.update","tags":["Account"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAccountSharingClientRelationInput"}}}},"responses":{"200":{"description":"The changed AccountSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSharingClientRelations":{"get":{"description":"Returns a page of AccountSharingClientRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"AccountSharingClientRelations.list","summary":"AccountSharingClientRelations.list","tags":["Account"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AccountSharingClientRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AccountSharingClientRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AccountSharingClientRelation record.","operationId":"AccountSharingClientRelations.create","summary":"AccountSharingClientRelations.create","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAccountSharingClientRelationInput"}}}},"responses":{"201":{"description":"The created AccountSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSharingClientRelations/batch-delete":{"post":{"description":"Deletes the AccountSharingClientRelation records with the given ids.","operationId":"AccountSharingClientRelations.batch_delete","summary":"AccountSharingClientRelations.batch_delete","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSharingClientRelations/batch-modify":{"post":{"description":"Creates or updates AccountSharingClientRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AccountSharingClientRelations.batch_create_or_update","summary":"AccountSharingClientRelations.batch_create_or_update","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAccountSharingClientRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSharingClientRelations/batch-restore":{"post":{"description":"Restores the deleted AccountSharingClientRelation records with the given ids.","operationId":"AccountSharingClientRelations.batch_restore","summary":"AccountSharingClientRelations.batch_restore","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSharingSalesUnitRelations/{id}":{"get":{"description":"Returns the AccountSharingSalesUnitRelation record with the given id.","operationId":"AccountSharingSalesUnitRelations.get","summary":"AccountSharingSalesUnitRelations.get","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountSharingSalesUnitRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AccountSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AccountSharingSalesUnitRelation record with the given id.","operationId":"AccountSharingSalesUnitRelations.delete","summary":"AccountSharingSalesUnitRelations.delete","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountSharingSalesUnitRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AccountSharingSalesUnitRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AccountSharingSalesUnitRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AccountSharingSalesUnitRelations.update","summary":"AccountSharingSalesUnitRelations.update","tags":["Account"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAccountSharingSalesUnitRelationInput"}}}},"responses":{"200":{"description":"The changed AccountSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSharingSalesUnitRelations":{"get":{"description":"Returns a page of AccountSharingSalesUnitRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"AccountSharingSalesUnitRelations.list","summary":"AccountSharingSalesUnitRelations.list","tags":["Account"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AccountSharingSalesUnitRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AccountSharingSalesUnitRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AccountSharingSalesUnitRelation record.","operationId":"AccountSharingSalesUnitRelations.create","summary":"AccountSharingSalesUnitRelations.create","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAccountSharingSalesUnitRelationInput"}}}},"responses":{"201":{"description":"The created AccountSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSharingSalesUnitRelations/batch-delete":{"post":{"description":"Deletes the AccountSharingSalesUnitRelation records with the given ids.","operationId":"AccountSharingSalesUnitRelations.batch_delete","summary":"AccountSharingSalesUnitRelations.batch_delete","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSharingSalesUnitRelations/batch-modify":{"post":{"description":"Creates or updates AccountSharingSalesUnitRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AccountSharingSalesUnitRelations.batch_create_or_update","summary":"AccountSharingSalesUnitRelations.batch_create_or_update","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAccountSharingSalesUnitRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSharingSalesUnitRelations/batch-restore":{"post":{"description":"Restores the deleted AccountSharingSalesUnitRelation records with the given ids.","operationId":"AccountSharingSalesUnitRelations.batch_restore","summary":"AccountSharingSalesUnitRelations.batch_restore","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSocialRelations/{id}":{"get":{"description":"Returns the AccountSocialRelation record with the given id.","operationId":"AccountSocialRelations.get","summary":"AccountSocialRelations.get","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountSocialRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AccountSocialRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountSocialRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AccountSocialRelation record with the given id.","operationId":"AccountSocialRelations.delete","summary":"AccountSocialRelations.delete","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountSocialRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AccountSocialRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AccountSocialRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AccountSocialRelations.update","summary":"AccountSocialRelations.update","tags":["Account"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAccountSocialRelationInput"}}}},"responses":{"200":{"description":"The changed AccountSocialRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountSocialRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSocialRelations":{"get":{"description":"Returns a page of AccountSocialRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"AccountSocialRelations.list","summary":"AccountSocialRelations.list","tags":["Account"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AccountSocialRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AccountSocialRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AccountSocialRelation record.","operationId":"AccountSocialRelations.create","summary":"AccountSocialRelations.create","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAccountSocialRelationInput"}}}},"responses":{"201":{"description":"The created AccountSocialRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountSocialRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSocialRelations/batch-delete":{"post":{"description":"Deletes the AccountSocialRelation records with the given ids.","operationId":"AccountSocialRelations.batch_delete","summary":"AccountSocialRelations.batch_delete","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSocialRelations/batch-modify":{"post":{"description":"Creates or updates AccountSocialRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AccountSocialRelations.batch_create_or_update","summary":"AccountSocialRelations.batch_create_or_update","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAccountSocialRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountSocialRelations/batch-restore":{"post":{"description":"Restores the deleted AccountSocialRelation records with the given ids.","operationId":"AccountSocialRelations.batch_restore","summary":"AccountSocialRelations.batch_restore","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountTypes/{id}":{"get":{"description":"Returns the AccountType record with the given id.","operationId":"AccountTypes.get","summary":"AccountTypes.get","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AccountType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AccountType record with the given id.","operationId":"AccountTypes.delete","summary":"AccountTypes.delete","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the AccountType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AccountType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AccountType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AccountTypes.update","summary":"AccountTypes.update","tags":["Account"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAccountTypeInput"}}}},"responses":{"200":{"description":"The changed AccountType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountTypes":{"get":{"description":"Returns a page of AccountType records, optionally filtered, sorted and limited to selected fields.","operationId":"AccountTypes.list","summary":"AccountTypes.list","tags":["Account"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AccountType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AccountType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AccountType record.","operationId":"AccountTypes.create","summary":"AccountTypes.create","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAccountTypeInput"}}}},"responses":{"201":{"description":"The created AccountType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AccountType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountTypes/batch-delete":{"post":{"description":"Deletes the AccountType records with the given ids.","operationId":"AccountTypes.batch_delete","summary":"AccountTypes.batch_delete","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountTypes/batch-modify":{"post":{"description":"Creates or updates AccountType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AccountTypes.batch_create_or_update","summary":"AccountTypes.batch_create_or_update","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAccountTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AccountTypes/batch-restore":{"post":{"description":"Restores the deleted AccountType records with the given ids.","operationId":"AccountTypes.batch_restore","summary":"AccountTypes.batch_restore","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Activities/{id}":{"get":{"description":"Returns one task or appointment by id.","operationId":"Activities.get","summary":"Get an activity","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the Activity record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Activity record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Activity"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Activities":{"get":{"description":"Returns tasks and appointments together, one page at a time. Activities is read-only; write through Tasks and Appointments.","operationId":"Activities.list","summary":"List activities","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Activity records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Activity"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityComments/{id}":{"get":{"description":"Returns the ActivityComment record with the given id.","operationId":"ActivityComments.get","summary":"ActivityComments.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the ActivityComment record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ActivityComment record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ActivityComment"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ActivityComment record with the given id.","operationId":"ActivityComments.delete","summary":"ActivityComments.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the ActivityComment record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ActivityComment record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ActivityComment record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ActivityComments.update","summary":"ActivityComments.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateActivityCommentInput"}}}},"responses":{"200":{"description":"The changed ActivityComment record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ActivityComment"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityComments":{"get":{"description":"Returns a page of ActivityComment records, optionally filtered, sorted and limited to selected fields.","operationId":"ActivityComments.list","summary":"ActivityComments.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ActivityComment records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ActivityComment"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ActivityComment record.","operationId":"ActivityComments.create","summary":"ActivityComments.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createActivityCommentInput"}}}},"responses":{"201":{"description":"The created ActivityComment record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ActivityComment"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityComments/batch-delete":{"post":{"description":"Deletes the ActivityComment records with the given ids.","operationId":"ActivityComments.batch_delete","summary":"ActivityComments.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityComments/batch-modify":{"post":{"description":"Creates or updates ActivityComment records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ActivityComments.batch_create_or_update","summary":"ActivityComments.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchActivityCommentInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityComments/batch-restore":{"post":{"description":"Restores the deleted ActivityComment records with the given ids.","operationId":"ActivityComments.batch_restore","summary":"ActivityComments.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityDataExRelations/{id}":{"get":{"description":"Returns the ActivityDataExRelation record with the given id.","operationId":"ActivityDataExRelations.get","summary":"ActivityDataExRelations.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the ActivityDataExRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ActivityDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ActivityDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityDataExRelations":{"get":{"description":"Returns a page of ActivityDataExRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ActivityDataExRelations.list","summary":"ActivityDataExRelations.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ActivityDataExRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ActivityDataExRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityKPIs/{id}":{"get":{"description":"Returns the ActivityKPI record with the given id.","operationId":"ActivityKPIs.get","summary":"ActivityKPIs.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the ActivityKPI record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ActivityKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ActivityKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ActivityKPI record with the given id.","operationId":"ActivityKPIs.delete","summary":"ActivityKPIs.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the ActivityKPI record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ActivityKPI record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ActivityKPI record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ActivityKPIs.update","summary":"ActivityKPIs.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateActivityKPIInput"}}}},"responses":{"200":{"description":"The changed ActivityKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ActivityKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityKPIs":{"get":{"description":"Returns a page of ActivityKPI records, optionally filtered, sorted and limited to selected fields.","operationId":"ActivityKPIs.list","summary":"ActivityKPIs.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ActivityKPI records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ActivityKPI"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ActivityKPI record.","operationId":"ActivityKPIs.create","summary":"ActivityKPIs.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createActivityKPIInput"}}}},"responses":{"201":{"description":"The created ActivityKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ActivityKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityKPIs/batch-delete":{"post":{"description":"Deletes the ActivityKPI records with the given ids.","operationId":"ActivityKPIs.batch_delete","summary":"ActivityKPIs.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityKPIs/batch-modify":{"post":{"description":"Creates or updates ActivityKPI records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ActivityKPIs.batch_create_or_update","summary":"ActivityKPIs.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchActivityKPIInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityKPIs/batch-restore":{"post":{"description":"Restores the deleted ActivityKPI records with the given ids.","operationId":"ActivityKPIs.batch_restore","summary":"ActivityKPIs.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityRelations/{id}":{"get":{"description":"Returns the ActivityRelation record with the given id.","operationId":"ActivityRelations.get","summary":"ActivityRelations.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the ActivityRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ActivityRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ActivityRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ActivityRelation record with the given id.","operationId":"ActivityRelations.delete","summary":"ActivityRelations.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the ActivityRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ActivityRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ActivityRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ActivityRelations.update","summary":"ActivityRelations.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateActivityRelationInput"}}}},"responses":{"200":{"description":"The changed ActivityRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ActivityRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityRelations":{"get":{"description":"Returns a page of ActivityRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ActivityRelations.list","summary":"ActivityRelations.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ActivityRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ActivityRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ActivityRelation record.","operationId":"ActivityRelations.create","summary":"ActivityRelations.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createActivityRelationInput"}}}},"responses":{"201":{"description":"The created ActivityRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ActivityRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityRelations/batch-delete":{"post":{"description":"Deletes the ActivityRelation records with the given ids.","operationId":"ActivityRelations.batch_delete","summary":"ActivityRelations.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityRelations/batch-modify":{"post":{"description":"Creates or updates ActivityRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ActivityRelations.batch_create_or_update","summary":"ActivityRelations.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchActivityRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ActivityRelations/batch-restore":{"post":{"description":"Restores the deleted ActivityRelation records with the given ids.","operationId":"ActivityRelations.batch_restore","summary":"ActivityRelations.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedAccountTypes/{id}":{"get":{"description":"Returns the AllowedAccountType record with the given id.","operationId":"AllowedAccountTypes.get","summary":"AllowedAccountTypes.get","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedAccountType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AllowedAccountType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedAccountType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AllowedAccountType record with the given id.","operationId":"AllowedAccountTypes.delete","summary":"AllowedAccountTypes.delete","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedAccountType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AllowedAccountType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AllowedAccountType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AllowedAccountTypes.update","summary":"AllowedAccountTypes.update","tags":["MasterRight"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAllowedAccountTypeInput"}}}},"responses":{"200":{"description":"The changed AllowedAccountType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedAccountType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedAccountTypes":{"get":{"description":"Returns a page of AllowedAccountType records, optionally filtered, sorted and limited to selected fields.","operationId":"AllowedAccountTypes.list","summary":"AllowedAccountTypes.list","tags":["MasterRight"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AllowedAccountType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AllowedAccountType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AllowedAccountType record.","operationId":"AllowedAccountTypes.create","summary":"AllowedAccountTypes.create","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAllowedAccountTypeInput"}}}},"responses":{"201":{"description":"The created AllowedAccountType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedAccountType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedAccountTypes/batch-delete":{"post":{"description":"Deletes the AllowedAccountType records with the given ids.","operationId":"AllowedAccountTypes.batch_delete","summary":"AllowedAccountTypes.batch_delete","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedAccountTypes/batch-modify":{"post":{"description":"Creates or updates AllowedAccountType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AllowedAccountTypes.batch_create_or_update","summary":"AllowedAccountTypes.batch_create_or_update","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAllowedAccountTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedAccountTypes/batch-restore":{"post":{"description":"Restores the deleted AllowedAccountType records with the given ids.","operationId":"AllowedAccountTypes.batch_restore","summary":"AllowedAccountTypes.batch_restore","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedAppointmentTypes/{id}":{"get":{"description":"Returns the AllowedAppointmentType record with the given id.","operationId":"AllowedAppointmentTypes.get","summary":"AllowedAppointmentTypes.get","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedAppointmentType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AllowedAppointmentType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedAppointmentType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AllowedAppointmentType record with the given id.","operationId":"AllowedAppointmentTypes.delete","summary":"AllowedAppointmentTypes.delete","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedAppointmentType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AllowedAppointmentType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AllowedAppointmentType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AllowedAppointmentTypes.update","summary":"AllowedAppointmentTypes.update","tags":["MasterRight"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAllowedAppointmentTypeInput"}}}},"responses":{"200":{"description":"The changed AllowedAppointmentType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedAppointmentType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedAppointmentTypes":{"get":{"description":"Returns a page of AllowedAppointmentType records, optionally filtered, sorted and limited to selected fields.","operationId":"AllowedAppointmentTypes.list","summary":"AllowedAppointmentTypes.list","tags":["MasterRight"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AllowedAppointmentType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AllowedAppointmentType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AllowedAppointmentType record.","operationId":"AllowedAppointmentTypes.create","summary":"AllowedAppointmentTypes.create","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAllowedAppointmentTypeInput"}}}},"responses":{"201":{"description":"The created AllowedAppointmentType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedAppointmentType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedAppointmentTypes/batch-delete":{"post":{"description":"Deletes the AllowedAppointmentType records with the given ids.","operationId":"AllowedAppointmentTypes.batch_delete","summary":"AllowedAppointmentTypes.batch_delete","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedAppointmentTypes/batch-modify":{"post":{"description":"Creates or updates AllowedAppointmentType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AllowedAppointmentTypes.batch_create_or_update","summary":"AllowedAppointmentTypes.batch_create_or_update","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAllowedAppointmentTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedAppointmentTypes/batch-restore":{"post":{"description":"Restores the deleted AllowedAppointmentType records with the given ids.","operationId":"AllowedAppointmentTypes.batch_restore","summary":"AllowedAppointmentTypes.batch_restore","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedCompanyEmails/{id}":{"get":{"description":"Returns the AllowedCompanyEmail record with the given id.","operationId":"AllowedCompanyEmails.get","summary":"AllowedCompanyEmails.get","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedCompanyEmail record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AllowedCompanyEmail record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedCompanyEmail"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AllowedCompanyEmail record with the given id.","operationId":"AllowedCompanyEmails.delete","summary":"AllowedCompanyEmails.delete","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedCompanyEmail record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AllowedCompanyEmail record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AllowedCompanyEmail record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AllowedCompanyEmails.update","summary":"AllowedCompanyEmails.update","tags":["MasterRight"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAllowedCompanyEmailInput"}}}},"responses":{"200":{"description":"The changed AllowedCompanyEmail record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedCompanyEmail"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedCompanyEmails":{"get":{"description":"Returns a page of AllowedCompanyEmail records, optionally filtered, sorted and limited to selected fields.","operationId":"AllowedCompanyEmails.list","summary":"AllowedCompanyEmails.list","tags":["MasterRight"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AllowedCompanyEmail records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AllowedCompanyEmail"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AllowedCompanyEmail record.","operationId":"AllowedCompanyEmails.create","summary":"AllowedCompanyEmails.create","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAllowedCompanyEmailInput"}}}},"responses":{"201":{"description":"The created AllowedCompanyEmail record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedCompanyEmail"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedCompanyEmails/batch-delete":{"post":{"description":"Deletes the AllowedCompanyEmail records with the given ids.","operationId":"AllowedCompanyEmails.batch_delete","summary":"AllowedCompanyEmails.batch_delete","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedCompanyEmails/batch-modify":{"post":{"description":"Creates or updates AllowedCompanyEmail records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AllowedCompanyEmails.batch_create_or_update","summary":"AllowedCompanyEmails.batch_create_or_update","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAllowedCompanyEmailInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedCompanyEmails/batch-restore":{"post":{"description":"Restores the deleted AllowedCompanyEmail records with the given ids.","operationId":"AllowedCompanyEmails.batch_restore","summary":"AllowedCompanyEmails.batch_restore","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedCompanyPhones/{id}":{"get":{"description":"Returns the AllowedCompanyPhone record with the given id.","operationId":"AllowedCompanyPhones.get","summary":"AllowedCompanyPhones.get","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedCompanyPhone record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AllowedCompanyPhone record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedCompanyPhone"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AllowedCompanyPhone record with the given id.","operationId":"AllowedCompanyPhones.delete","summary":"AllowedCompanyPhones.delete","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedCompanyPhone record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AllowedCompanyPhone record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AllowedCompanyPhone record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AllowedCompanyPhones.update","summary":"AllowedCompanyPhones.update","tags":["MasterRight"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAllowedCompanyPhoneInput"}}}},"responses":{"200":{"description":"The changed AllowedCompanyPhone record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedCompanyPhone"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedCompanyPhones":{"get":{"description":"Returns a page of AllowedCompanyPhone records, optionally filtered, sorted and limited to selected fields.","operationId":"AllowedCompanyPhones.list","summary":"AllowedCompanyPhones.list","tags":["MasterRight"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AllowedCompanyPhone records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AllowedCompanyPhone"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AllowedCompanyPhone record.","operationId":"AllowedCompanyPhones.create","summary":"AllowedCompanyPhones.create","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAllowedCompanyPhoneInput"}}}},"responses":{"201":{"description":"The created AllowedCompanyPhone record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedCompanyPhone"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedCompanyPhones/batch-delete":{"post":{"description":"Deletes the AllowedCompanyPhone records with the given ids.","operationId":"AllowedCompanyPhones.batch_delete","summary":"AllowedCompanyPhones.batch_delete","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedCompanyPhones/batch-modify":{"post":{"description":"Creates or updates AllowedCompanyPhone records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AllowedCompanyPhones.batch_create_or_update","summary":"AllowedCompanyPhones.batch_create_or_update","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAllowedCompanyPhoneInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedCompanyPhones/batch-restore":{"post":{"description":"Restores the deleted AllowedCompanyPhone records with the given ids.","operationId":"AllowedCompanyPhones.batch_restore","summary":"AllowedCompanyPhones.batch_restore","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedContactTypes/{id}":{"get":{"description":"Returns the AllowedContactType record with the given id.","operationId":"AllowedContactTypes.get","summary":"AllowedContactTypes.get","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedContactType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AllowedContactType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedContactType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AllowedContactType record with the given id.","operationId":"AllowedContactTypes.delete","summary":"AllowedContactTypes.delete","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedContactType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AllowedContactType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AllowedContactType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AllowedContactTypes.update","summary":"AllowedContactTypes.update","tags":["MasterRight"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAllowedContactTypeInput"}}}},"responses":{"200":{"description":"The changed AllowedContactType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedContactType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedContactTypes":{"get":{"description":"Returns a page of AllowedContactType records, optionally filtered, sorted and limited to selected fields.","operationId":"AllowedContactTypes.list","summary":"AllowedContactTypes.list","tags":["MasterRight"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AllowedContactType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AllowedContactType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AllowedContactType record.","operationId":"AllowedContactTypes.create","summary":"AllowedContactTypes.create","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAllowedContactTypeInput"}}}},"responses":{"201":{"description":"The created AllowedContactType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedContactType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedContactTypes/batch-delete":{"post":{"description":"Deletes the AllowedContactType records with the given ids.","operationId":"AllowedContactTypes.batch_delete","summary":"AllowedContactTypes.batch_delete","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedContactTypes/batch-modify":{"post":{"description":"Creates or updates AllowedContactType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AllowedContactTypes.batch_create_or_update","summary":"AllowedContactTypes.batch_create_or_update","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAllowedContactTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedContactTypes/batch-restore":{"post":{"description":"Restores the deleted AllowedContactType records with the given ids.","operationId":"AllowedContactTypes.batch_restore","summary":"AllowedContactTypes.batch_restore","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedLeadTypes/{id}":{"get":{"description":"Returns the AllowedLeadType record with the given id.","operationId":"AllowedLeadTypes.get","summary":"AllowedLeadTypes.get","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedLeadType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AllowedLeadType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedLeadType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AllowedLeadType record with the given id.","operationId":"AllowedLeadTypes.delete","summary":"AllowedLeadTypes.delete","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedLeadType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AllowedLeadType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AllowedLeadType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AllowedLeadTypes.update","summary":"AllowedLeadTypes.update","tags":["MasterRight"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAllowedLeadTypeInput"}}}},"responses":{"200":{"description":"The changed AllowedLeadType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedLeadType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedLeadTypes":{"get":{"description":"Returns a page of AllowedLeadType records, optionally filtered, sorted and limited to selected fields.","operationId":"AllowedLeadTypes.list","summary":"AllowedLeadTypes.list","tags":["MasterRight"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AllowedLeadType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AllowedLeadType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AllowedLeadType record.","operationId":"AllowedLeadTypes.create","summary":"AllowedLeadTypes.create","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAllowedLeadTypeInput"}}}},"responses":{"201":{"description":"The created AllowedLeadType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedLeadType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedLeadTypes/batch-delete":{"post":{"description":"Deletes the AllowedLeadType records with the given ids.","operationId":"AllowedLeadTypes.batch_delete","summary":"AllowedLeadTypes.batch_delete","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedLeadTypes/batch-modify":{"post":{"description":"Creates or updates AllowedLeadType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AllowedLeadTypes.batch_create_or_update","summary":"AllowedLeadTypes.batch_create_or_update","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAllowedLeadTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedLeadTypes/batch-restore":{"post":{"description":"Restores the deleted AllowedLeadType records with the given ids.","operationId":"AllowedLeadTypes.batch_restore","summary":"AllowedLeadTypes.batch_restore","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedPipelines/{id}":{"get":{"description":"Returns the AllowedPipeline record with the given id.","operationId":"AllowedPipelines.get","summary":"AllowedPipelines.get","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedPipeline record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AllowedPipeline record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedPipeline"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AllowedPipeline record with the given id.","operationId":"AllowedPipelines.delete","summary":"AllowedPipelines.delete","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedPipeline record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AllowedPipeline record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AllowedPipeline record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AllowedPipelines.update","summary":"AllowedPipelines.update","tags":["MasterRight"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAllowedPipelineInput"}}}},"responses":{"200":{"description":"The changed AllowedPipeline record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedPipeline"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedPipelines":{"get":{"description":"Returns a page of AllowedPipeline records, optionally filtered, sorted and limited to selected fields.","operationId":"AllowedPipelines.list","summary":"AllowedPipelines.list","tags":["MasterRight"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AllowedPipeline records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AllowedPipeline"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AllowedPipeline record.","operationId":"AllowedPipelines.create","summary":"AllowedPipelines.create","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAllowedPipelineInput"}}}},"responses":{"201":{"description":"The created AllowedPipeline record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedPipeline"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedPipelines/batch-delete":{"post":{"description":"Deletes the AllowedPipeline records with the given ids.","operationId":"AllowedPipelines.batch_delete","summary":"AllowedPipelines.batch_delete","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedPipelines/batch-modify":{"post":{"description":"Creates or updates AllowedPipeline records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AllowedPipelines.batch_create_or_update","summary":"AllowedPipelines.batch_create_or_update","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAllowedPipelineInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedPipelines/batch-restore":{"post":{"description":"Restores the deleted AllowedPipeline records with the given ids.","operationId":"AllowedPipelines.batch_restore","summary":"AllowedPipelines.batch_restore","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedQuoteTypes/{id}":{"get":{"description":"Returns the AllowedQuoteType record with the given id.","operationId":"AllowedQuoteTypes.get","summary":"AllowedQuoteTypes.get","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedQuoteType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AllowedQuoteType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedQuoteType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AllowedQuoteType record with the given id.","operationId":"AllowedQuoteTypes.delete","summary":"AllowedQuoteTypes.delete","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedQuoteType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AllowedQuoteType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AllowedQuoteType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AllowedQuoteTypes.update","summary":"AllowedQuoteTypes.update","tags":["MasterRight"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAllowedQuoteTypeInput"}}}},"responses":{"200":{"description":"The changed AllowedQuoteType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedQuoteType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedQuoteTypes":{"get":{"description":"Returns a page of AllowedQuoteType records, optionally filtered, sorted and limited to selected fields.","operationId":"AllowedQuoteTypes.list","summary":"AllowedQuoteTypes.list","tags":["MasterRight"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AllowedQuoteType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AllowedQuoteType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AllowedQuoteType record.","operationId":"AllowedQuoteTypes.create","summary":"AllowedQuoteTypes.create","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAllowedQuoteTypeInput"}}}},"responses":{"201":{"description":"The created AllowedQuoteType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedQuoteType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedQuoteTypes/batch-delete":{"post":{"description":"Deletes the AllowedQuoteType records with the given ids.","operationId":"AllowedQuoteTypes.batch_delete","summary":"AllowedQuoteTypes.batch_delete","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedQuoteTypes/batch-modify":{"post":{"description":"Creates or updates AllowedQuoteType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AllowedQuoteTypes.batch_create_or_update","summary":"AllowedQuoteTypes.batch_create_or_update","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAllowedQuoteTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedQuoteTypes/batch-restore":{"post":{"description":"Restores the deleted AllowedQuoteType records with the given ids.","operationId":"AllowedQuoteTypes.batch_restore","summary":"AllowedQuoteTypes.batch_restore","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedTaskTypes/{id}":{"get":{"description":"Returns the AllowedTaskType record with the given id.","operationId":"AllowedTaskTypes.get","summary":"AllowedTaskTypes.get","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedTaskType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AllowedTaskType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedTaskType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AllowedTaskType record with the given id.","operationId":"AllowedTaskTypes.delete","summary":"AllowedTaskTypes.delete","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the AllowedTaskType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AllowedTaskType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AllowedTaskType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AllowedTaskTypes.update","summary":"AllowedTaskTypes.update","tags":["MasterRight"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAllowedTaskTypeInput"}}}},"responses":{"200":{"description":"The changed AllowedTaskType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedTaskType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedTaskTypes":{"get":{"description":"Returns a page of AllowedTaskType records, optionally filtered, sorted and limited to selected fields.","operationId":"AllowedTaskTypes.list","summary":"AllowedTaskTypes.list","tags":["MasterRight"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AllowedTaskType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AllowedTaskType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AllowedTaskType record.","operationId":"AllowedTaskTypes.create","summary":"AllowedTaskTypes.create","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAllowedTaskTypeInput"}}}},"responses":{"201":{"description":"The created AllowedTaskType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AllowedTaskType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedTaskTypes/batch-delete":{"post":{"description":"Deletes the AllowedTaskType records with the given ids.","operationId":"AllowedTaskTypes.batch_delete","summary":"AllowedTaskTypes.batch_delete","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedTaskTypes/batch-modify":{"post":{"description":"Creates or updates AllowedTaskType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AllowedTaskTypes.batch_create_or_update","summary":"AllowedTaskTypes.batch_create_or_update","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAllowedTaskTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AllowedTaskTypes/batch-restore":{"post":{"description":"Restores the deleted AllowedTaskType records with the given ids.","operationId":"AllowedTaskTypes.batch_restore","summary":"AllowedTaskTypes.batch_restore","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApiAccesses/{id}":{"get":{"description":"Returns the ApiAccess record with the given id.","operationId":"ApiAccesses.get","summary":"ApiAccesses.get","tags":["API Access"],"parameters":[{"name":"id","in":"path","description":"Id of the ApiAccess record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ApiAccess record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ApiAccess"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApiAccesses":{"get":{"description":"Returns a page of ApiAccess records, optionally filtered, sorted and limited to selected fields.","operationId":"ApiAccesses.list","summary":"ApiAccesses.list","tags":["API Access"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ApiAccess records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ApiAccess"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Appointments/{id}":{"get":{"description":"Returns the Appointment record with the given id.","operationId":"Appointments.get","summary":"Appointments.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the Appointment record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Appointment record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Appointment"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Appointment record with the given id.","operationId":"Appointments.delete","summary":"Appointments.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the Appointment record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Appointment record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Appointment record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Appointments.update","summary":"Appointments.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAppointmentInput"}}}},"responses":{"200":{"description":"The changed Appointment record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Appointment"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Appointments":{"get":{"description":"Returns a page of Appointment records, optionally filtered, sorted and limited to selected fields.","operationId":"Appointments.list","summary":"Appointments.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Appointment records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Appointment"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Appointment record.","operationId":"Appointments.create","summary":"Appointments.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAppointmentInput"}}}},"responses":{"201":{"description":"The created Appointment record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Appointment"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Appointments/batch-delete":{"post":{"description":"Deletes the Appointment records with the given ids.","operationId":"Appointments.batch_delete","summary":"Appointments.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Appointments/batch-modify":{"post":{"description":"Creates or updates Appointment records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Appointments.batch_create_or_update","summary":"Appointments.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAppointmentInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Appointments/batch-restore":{"post":{"description":"Restores the deleted Appointment records with the given ids.","operationId":"Appointments.batch_restore","summary":"Appointments.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentClientInviteesRelations/{id}":{"get":{"description":"Returns the AppointmentClientInviteesRelation record with the given id.","operationId":"AppointmentClientInviteesRelations.get","summary":"AppointmentClientInviteesRelations.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the AppointmentClientInviteesRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AppointmentClientInviteesRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentClientInviteesRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AppointmentClientInviteesRelation record with the given id.","operationId":"AppointmentClientInviteesRelations.delete","summary":"AppointmentClientInviteesRelations.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the AppointmentClientInviteesRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AppointmentClientInviteesRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AppointmentClientInviteesRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AppointmentClientInviteesRelations.update","summary":"AppointmentClientInviteesRelations.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAppointmentClientInviteesRelationInput"}}}},"responses":{"200":{"description":"The changed AppointmentClientInviteesRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentClientInviteesRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentClientInviteesRelations":{"get":{"description":"Returns a page of AppointmentClientInviteesRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"AppointmentClientInviteesRelations.list","summary":"AppointmentClientInviteesRelations.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AppointmentClientInviteesRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AppointmentClientInviteesRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AppointmentClientInviteesRelation record.","operationId":"AppointmentClientInviteesRelations.create","summary":"AppointmentClientInviteesRelations.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAppointmentClientInviteesRelationInput"}}}},"responses":{"201":{"description":"The created AppointmentClientInviteesRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentClientInviteesRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentClientInviteesRelations/batch-delete":{"post":{"description":"Deletes the AppointmentClientInviteesRelation records with the given ids.","operationId":"AppointmentClientInviteesRelations.batch_delete","summary":"AppointmentClientInviteesRelations.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentClientInviteesRelations/batch-modify":{"post":{"description":"Creates or updates AppointmentClientInviteesRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AppointmentClientInviteesRelations.batch_create_or_update","summary":"AppointmentClientInviteesRelations.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAppointmentClientInviteesRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentClientInviteesRelations/batch-restore":{"post":{"description":"Restores the deleted AppointmentClientInviteesRelation records with the given ids.","operationId":"AppointmentClientInviteesRelations.batch_restore","summary":"AppointmentClientInviteesRelations.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentContactInviteesRelations/{id}":{"get":{"description":"Returns the AppointmentContactInviteesRelation record with the given id.","operationId":"AppointmentContactInviteesRelations.get","summary":"AppointmentContactInviteesRelations.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the AppointmentContactInviteesRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AppointmentContactInviteesRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentContactInviteesRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AppointmentContactInviteesRelation record with the given id.","operationId":"AppointmentContactInviteesRelations.delete","summary":"AppointmentContactInviteesRelations.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the AppointmentContactInviteesRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AppointmentContactInviteesRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AppointmentContactInviteesRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AppointmentContactInviteesRelations.update","summary":"AppointmentContactInviteesRelations.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAppointmentContactInviteesRelationInput"}}}},"responses":{"200":{"description":"The changed AppointmentContactInviteesRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentContactInviteesRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentContactInviteesRelations":{"get":{"description":"Returns a page of AppointmentContactInviteesRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"AppointmentContactInviteesRelations.list","summary":"AppointmentContactInviteesRelations.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AppointmentContactInviteesRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AppointmentContactInviteesRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AppointmentContactInviteesRelation record.","operationId":"AppointmentContactInviteesRelations.create","summary":"AppointmentContactInviteesRelations.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAppointmentContactInviteesRelationInput"}}}},"responses":{"201":{"description":"The created AppointmentContactInviteesRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentContactInviteesRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentContactInviteesRelations/batch-delete":{"post":{"description":"Deletes the AppointmentContactInviteesRelation records with the given ids.","operationId":"AppointmentContactInviteesRelations.batch_delete","summary":"AppointmentContactInviteesRelations.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentContactInviteesRelations/batch-modify":{"post":{"description":"Creates or updates AppointmentContactInviteesRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AppointmentContactInviteesRelations.batch_create_or_update","summary":"AppointmentContactInviteesRelations.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAppointmentContactInviteesRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentContactInviteesRelations/batch-restore":{"post":{"description":"Restores the deleted AppointmentContactInviteesRelation records with the given ids.","operationId":"AppointmentContactInviteesRelations.batch_restore","summary":"AppointmentContactInviteesRelations.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentReminders/{id}":{"get":{"description":"Returns the AppointmentReminder record with the given id.","operationId":"AppointmentReminders.get","summary":"AppointmentReminders.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the AppointmentReminder record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AppointmentReminder record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentReminder"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AppointmentReminder record with the given id.","operationId":"AppointmentReminders.delete","summary":"AppointmentReminders.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the AppointmentReminder record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AppointmentReminder record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AppointmentReminder record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AppointmentReminders.update","summary":"AppointmentReminders.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAppointmentReminderInput"}}}},"responses":{"200":{"description":"The changed AppointmentReminder record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentReminder"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentReminders":{"get":{"description":"Returns a page of AppointmentReminder records, optionally filtered, sorted and limited to selected fields.","operationId":"AppointmentReminders.list","summary":"AppointmentReminders.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AppointmentReminder records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AppointmentReminder"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AppointmentReminder record.","operationId":"AppointmentReminders.create","summary":"AppointmentReminders.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAppointmentReminderInput"}}}},"responses":{"201":{"description":"The created AppointmentReminder record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentReminder"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentReminders/batch-delete":{"post":{"description":"Deletes the AppointmentReminder records with the given ids.","operationId":"AppointmentReminders.batch_delete","summary":"AppointmentReminders.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentReminders/batch-modify":{"post":{"description":"Creates or updates AppointmentReminder records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AppointmentReminders.batch_create_or_update","summary":"AppointmentReminders.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAppointmentReminderInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentReminders/batch-restore":{"post":{"description":"Restores the deleted AppointmentReminder records with the given ids.","operationId":"AppointmentReminders.batch_restore","summary":"AppointmentReminders.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentSchedules/{id}":{"get":{"description":"Returns the AppointmentSchedule record with the given id.","operationId":"AppointmentSchedules.get","summary":"AppointmentSchedules.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the AppointmentSchedule record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AppointmentSchedule record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentSchedule"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AppointmentSchedule record with the given id.","operationId":"AppointmentSchedules.delete","summary":"AppointmentSchedules.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the AppointmentSchedule record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AppointmentSchedule record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AppointmentSchedule record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AppointmentSchedules.update","summary":"AppointmentSchedules.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAppointmentScheduleInput"}}}},"responses":{"200":{"description":"The changed AppointmentSchedule record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentSchedule"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentSchedules":{"get":{"description":"Returns a page of AppointmentSchedule records, optionally filtered, sorted and limited to selected fields.","operationId":"AppointmentSchedules.list","summary":"AppointmentSchedules.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AppointmentSchedule records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AppointmentSchedule"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AppointmentSchedule record.","operationId":"AppointmentSchedules.create","summary":"AppointmentSchedules.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAppointmentScheduleInput"}}}},"responses":{"201":{"description":"The created AppointmentSchedule record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentSchedule"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentSchedules/batch-delete":{"post":{"description":"Deletes the AppointmentSchedule records with the given ids.","operationId":"AppointmentSchedules.batch_delete","summary":"AppointmentSchedules.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentSchedules/batch-modify":{"post":{"description":"Creates or updates AppointmentSchedule records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AppointmentSchedules.batch_create_or_update","summary":"AppointmentSchedules.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAppointmentScheduleInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentSchedules/batch-restore":{"post":{"description":"Restores the deleted AppointmentSchedule records with the given ids.","operationId":"AppointmentSchedules.batch_restore","summary":"AppointmentSchedules.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentTypes/{id}":{"get":{"description":"Returns the AppointmentType record with the given id.","operationId":"AppointmentTypes.get","summary":"AppointmentTypes.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the AppointmentType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The AppointmentType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the AppointmentType record with the given id.","operationId":"AppointmentTypes.delete","summary":"AppointmentTypes.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the AppointmentType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the AppointmentType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the AppointmentType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"AppointmentTypes.update","summary":"AppointmentTypes.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateAppointmentTypeInput"}}}},"responses":{"200":{"description":"The changed AppointmentType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentTypes":{"get":{"description":"Returns a page of AppointmentType records, optionally filtered, sorted and limited to selected fields.","operationId":"AppointmentTypes.list","summary":"AppointmentTypes.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of AppointmentType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/AppointmentType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a AppointmentType record.","operationId":"AppointmentTypes.create","summary":"AppointmentTypes.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createAppointmentTypeInput"}}}},"responses":{"201":{"description":"The created AppointmentType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/AppointmentType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentTypes/batch-delete":{"post":{"description":"Deletes the AppointmentType records with the given ids.","operationId":"AppointmentTypes.batch_delete","summary":"AppointmentTypes.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentTypes/batch-modify":{"post":{"description":"Creates or updates AppointmentType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"AppointmentTypes.batch_create_or_update","summary":"AppointmentTypes.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchAppointmentTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/AppointmentTypes/batch-restore":{"post":{"description":"Restores the deleted AppointmentType records with the given ids.","operationId":"AppointmentTypes.batch_restore","summary":"AppointmentTypes.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Approvals/{id}":{"get":{"description":"Returns the Approval record with the given id.","operationId":"Approvals.get","summary":"Approvals.get","tags":["Approval"],"parameters":[{"name":"id","in":"path","description":"Id of the Approval record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Approval record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Approval"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Approval record with the given id.","operationId":"Approvals.delete","summary":"Approvals.delete","tags":["Approval"],"parameters":[{"name":"id","in":"path","description":"Id of the Approval record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Approval record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Approval record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Approvals.update","summary":"Approvals.update","tags":["Approval"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateApprovalInput"}}}},"responses":{"200":{"description":"The changed Approval record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Approval"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Approvals":{"get":{"description":"Returns a page of Approval records, optionally filtered, sorted and limited to selected fields.","operationId":"Approvals.list","summary":"Approvals.list","tags":["Approval"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Approval records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Approval"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Approval record.","operationId":"Approvals.create","summary":"Approvals.create","tags":["Approval"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createApprovalInput"}}}},"responses":{"201":{"description":"The created Approval record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Approval"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Approvals/batch-delete":{"post":{"description":"Deletes the Approval records with the given ids.","operationId":"Approvals.batch_delete","summary":"Approvals.batch_delete","tags":["Approval"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Approvals/batch-modify":{"post":{"description":"Creates or updates Approval records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Approvals.batch_create_or_update","summary":"Approvals.batch_create_or_update","tags":["Approval"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchApprovalInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Approvals/batch-restore":{"post":{"description":"Restores the deleted Approval records with the given ids.","operationId":"Approvals.batch_restore","summary":"Approvals.batch_restore","tags":["Approval"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalApprovers/{id}":{"get":{"description":"Returns the ApprovalApprover record with the given id.","operationId":"ApprovalApprovers.get","summary":"ApprovalApprovers.get","tags":["Approval"],"parameters":[{"name":"id","in":"path","description":"Id of the ApprovalApprover record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ApprovalApprover record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ApprovalApprover"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ApprovalApprover record with the given id.","operationId":"ApprovalApprovers.delete","summary":"ApprovalApprovers.delete","tags":["Approval"],"parameters":[{"name":"id","in":"path","description":"Id of the ApprovalApprover record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ApprovalApprover record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ApprovalApprover record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ApprovalApprovers.update","summary":"ApprovalApprovers.update","tags":["Approval"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateApprovalApproverInput"}}}},"responses":{"200":{"description":"The changed ApprovalApprover record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ApprovalApprover"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalApprovers":{"get":{"description":"Returns a page of ApprovalApprover records, optionally filtered, sorted and limited to selected fields.","operationId":"ApprovalApprovers.list","summary":"ApprovalApprovers.list","tags":["Approval"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ApprovalApprover records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ApprovalApprover"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ApprovalApprover record.","operationId":"ApprovalApprovers.create","summary":"ApprovalApprovers.create","tags":["Approval"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createApprovalApproverInput"}}}},"responses":{"201":{"description":"The created ApprovalApprover record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ApprovalApprover"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalApprovers/batch-delete":{"post":{"description":"Deletes the ApprovalApprover records with the given ids.","operationId":"ApprovalApprovers.batch_delete","summary":"ApprovalApprovers.batch_delete","tags":["Approval"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalApprovers/batch-modify":{"post":{"description":"Creates or updates ApprovalApprover records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ApprovalApprovers.batch_create_or_update","summary":"ApprovalApprovers.batch_create_or_update","tags":["Approval"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchApprovalApproverInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalApprovers/batch-restore":{"post":{"description":"Restores the deleted ApprovalApprover records with the given ids.","operationId":"ApprovalApprovers.batch_restore","summary":"ApprovalApprovers.batch_restore","tags":["Approval"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalProcesses/{id}":{"get":{"description":"Returns the ApprovalProcess record with the given id.","operationId":"ApprovalProcesses.get","summary":"ApprovalProcesses.get","tags":["Approval"],"parameters":[{"name":"id","in":"path","description":"Id of the ApprovalProcess record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ApprovalProcess record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ApprovalProcess"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ApprovalProcess record with the given id.","operationId":"ApprovalProcesses.delete","summary":"ApprovalProcesses.delete","tags":["Approval"],"parameters":[{"name":"id","in":"path","description":"Id of the ApprovalProcess record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ApprovalProcess record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ApprovalProcess record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ApprovalProcesses.update","summary":"ApprovalProcesses.update","tags":["Approval"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateApprovalProcessInput"}}}},"responses":{"200":{"description":"The changed ApprovalProcess record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ApprovalProcess"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalProcesses":{"get":{"description":"Returns a page of ApprovalProcess records, optionally filtered, sorted and limited to selected fields.","operationId":"ApprovalProcesses.list","summary":"ApprovalProcesses.list","tags":["Approval"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ApprovalProcess records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ApprovalProcess"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ApprovalProcess record.","operationId":"ApprovalProcesses.create","summary":"ApprovalProcesses.create","tags":["Approval"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createApprovalProcessInput"}}}},"responses":{"201":{"description":"The created ApprovalProcess record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ApprovalProcess"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalProcesses/batch-delete":{"post":{"description":"Deletes the ApprovalProcess records with the given ids.","operationId":"ApprovalProcesses.batch_delete","summary":"ApprovalProcesses.batch_delete","tags":["Approval"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalProcesses/batch-modify":{"post":{"description":"Creates or updates ApprovalProcess records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ApprovalProcesses.batch_create_or_update","summary":"ApprovalProcesses.batch_create_or_update","tags":["Approval"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchApprovalProcessInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalProcesses/batch-restore":{"post":{"description":"Restores the deleted ApprovalProcess records with the given ids.","operationId":"ApprovalProcesses.batch_restore","summary":"ApprovalProcesses.batch_restore","tags":["Approval"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalProcessActivityLogLines/{id}":{"get":{"description":"Returns the ApprovalProcessActivityLogLine record with the given id.","operationId":"ApprovalProcessActivityLogLines.get","summary":"ApprovalProcessActivityLogLines.get","tags":["Approval"],"parameters":[{"name":"id","in":"path","description":"Id of the ApprovalProcessActivityLogLine record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ApprovalProcessActivityLogLine record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ApprovalProcessActivityLogLine"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ApprovalProcessActivityLogLine record with the given id.","operationId":"ApprovalProcessActivityLogLines.delete","summary":"ApprovalProcessActivityLogLines.delete","tags":["Approval"],"parameters":[{"name":"id","in":"path","description":"Id of the ApprovalProcessActivityLogLine record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ApprovalProcessActivityLogLine record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ApprovalProcessActivityLogLine record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ApprovalProcessActivityLogLines.update","summary":"ApprovalProcessActivityLogLines.update","tags":["Approval"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateApprovalProcessActivityLogLineInput"}}}},"responses":{"200":{"description":"The changed ApprovalProcessActivityLogLine record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ApprovalProcessActivityLogLine"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalProcessActivityLogLines":{"get":{"description":"Returns a page of ApprovalProcessActivityLogLine records, optionally filtered, sorted and limited to selected fields.","operationId":"ApprovalProcessActivityLogLines.list","summary":"ApprovalProcessActivityLogLines.list","tags":["Approval"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ApprovalProcessActivityLogLine records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ApprovalProcessActivityLogLine"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ApprovalProcessActivityLogLine record.","operationId":"ApprovalProcessActivityLogLines.create","summary":"ApprovalProcessActivityLogLines.create","tags":["Approval"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createApprovalProcessActivityLogLineInput"}}}},"responses":{"201":{"description":"The created ApprovalProcessActivityLogLine record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ApprovalProcessActivityLogLine"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalProcessActivityLogLines/batch-delete":{"post":{"description":"Deletes the ApprovalProcessActivityLogLine records with the given ids.","operationId":"ApprovalProcessActivityLogLines.batch_delete","summary":"ApprovalProcessActivityLogLines.batch_delete","tags":["Approval"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalProcessActivityLogLines/batch-modify":{"post":{"description":"Creates or updates ApprovalProcessActivityLogLine records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ApprovalProcessActivityLogLines.batch_create_or_update","summary":"ApprovalProcessActivityLogLines.batch_create_or_update","tags":["Approval"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchApprovalProcessActivityLogLineInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ApprovalProcessActivityLogLines/batch-restore":{"post":{"description":"Restores the deleted ApprovalProcessActivityLogLine records with the given ids.","operationId":"ApprovalProcessActivityLogLines.batch_restore","summary":"ApprovalProcessActivityLogLines.batch_restore","tags":["Approval"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Calls/{id}":{"get":{"description":"Returns the Call record with the given id.","operationId":"Calls.get","summary":"Calls.get","tags":["Call"],"parameters":[{"name":"id","in":"path","description":"Id of the Call record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Call record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Call"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Call record with the given id.","operationId":"Calls.delete","summary":"Calls.delete","tags":["Call"],"parameters":[{"name":"id","in":"path","description":"Id of the Call record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Call record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Call record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Calls.update","summary":"Calls.update","tags":["Call"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCallInput"}}}},"responses":{"200":{"description":"The changed Call record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Call"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Calls":{"get":{"description":"Returns a page of Call records, optionally filtered, sorted and limited to selected fields.","operationId":"Calls.list","summary":"Calls.list","tags":["Call"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Call records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Call"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Call record.","operationId":"Calls.create","summary":"Calls.create","tags":["Call"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createCallInput"}}}},"responses":{"201":{"description":"The created Call record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Call"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Calls/batch-delete":{"post":{"description":"Deletes the Call records with the given ids.","operationId":"Calls.batch_delete","summary":"Calls.batch_delete","tags":["Call"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Calls/batch-modify":{"post":{"description":"Creates or updates Call records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Calls.batch_create_or_update","summary":"Calls.batch_create_or_update","tags":["Call"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchCallInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Calls/batch-restore":{"post":{"description":"Restores the deleted Call records with the given ids.","operationId":"Calls.batch_restore","summary":"Calls.batch_restore","tags":["Call"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ChatConversations/{id}":{"get":{"description":"Returns the ChatConversation record with the given id.","operationId":"ChatConversations.get","summary":"ChatConversations.get","tags":["Chat"],"parameters":[{"name":"id","in":"path","description":"Id of the ChatConversation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ChatConversation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ChatConversation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ChatConversation record with the given id.","operationId":"ChatConversations.delete","summary":"ChatConversations.delete","tags":["Chat"],"parameters":[{"name":"id","in":"path","description":"Id of the ChatConversation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ChatConversation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ChatConversation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ChatConversations.update","summary":"ChatConversations.update","tags":["Chat"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateChatConversationInput"}}}},"responses":{"200":{"description":"The changed ChatConversation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ChatConversation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ChatConversations":{"get":{"description":"Returns a page of ChatConversation records, optionally filtered, sorted and limited to selected fields.","operationId":"ChatConversations.list","summary":"ChatConversations.list","tags":["Chat"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ChatConversation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ChatConversation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ChatConversation record.","operationId":"ChatConversations.create","summary":"ChatConversations.create","tags":["Chat"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createChatConversationInput"}}}},"responses":{"201":{"description":"The created ChatConversation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ChatConversation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ChatConversations/batch-delete":{"post":{"description":"Deletes the ChatConversation records with the given ids.","operationId":"ChatConversations.batch_delete","summary":"ChatConversations.batch_delete","tags":["Chat"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ChatConversations/batch-modify":{"post":{"description":"Creates or updates ChatConversation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ChatConversations.batch_create_or_update","summary":"ChatConversations.batch_create_or_update","tags":["Chat"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchChatConversationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ChatConversations/batch-restore":{"post":{"description":"Restores the deleted ChatConversation records with the given ids.","operationId":"ChatConversations.batch_restore","summary":"ChatConversations.batch_restore","tags":["Chat"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Clients/{id}":{"get":{"description":"Returns the Client record with the given id.","operationId":"Clients.get","summary":"Clients.get","tags":["Client"],"parameters":[{"name":"id","in":"path","description":"Id of the Client record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Client record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Client"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Client record with the given id.","operationId":"Clients.delete","summary":"Clients.delete","tags":["Client"],"parameters":[{"name":"id","in":"path","description":"Id of the Client record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Client record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Client record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Clients.update","summary":"Clients.update","tags":["Client"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateClientInput"}}}},"responses":{"200":{"description":"The changed Client record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Client"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Clients":{"get":{"description":"Returns a page of Client records, optionally filtered, sorted and limited to selected fields.","operationId":"Clients.list","summary":"Clients.list","tags":["Client"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Client records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Client"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Client record.","operationId":"Clients.create","summary":"Clients.create","tags":["Client"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createClientInput"}}}},"responses":{"201":{"description":"The created Client record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Client"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Clients/batch-delete":{"post":{"description":"Deletes the Client records with the given ids.","operationId":"Clients.batch_delete","summary":"Clients.batch_delete","tags":["Client"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Clients/batch-modify":{"post":{"description":"Creates or updates Client records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Clients.batch_create_or_update","summary":"Clients.batch_create_or_update","tags":["Client"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchClientInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Clients/batch-restore":{"post":{"description":"Restores the deleted Client records with the given ids.","operationId":"Clients.batch_restore","summary":"Clients.batch_restore","tags":["Client"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientExcludedOppties/{id}":{"get":{"description":"Returns the ClientExcludedOppty record with the given id.","operationId":"ClientExcludedOppties.get","summary":"ClientExcludedOppties.get","tags":["Client"],"parameters":[{"name":"id","in":"path","description":"Id of the ClientExcludedOppty record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ClientExcludedOppty record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ClientExcludedOppty"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ClientExcludedOppty record with the given id.","operationId":"ClientExcludedOppties.delete","summary":"ClientExcludedOppties.delete","tags":["Client"],"parameters":[{"name":"id","in":"path","description":"Id of the ClientExcludedOppty record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ClientExcludedOppty record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ClientExcludedOppty record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ClientExcludedOppties.update","summary":"ClientExcludedOppties.update","tags":["Client"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateClientExcludedOpptyInput"}}}},"responses":{"200":{"description":"The changed ClientExcludedOppty record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ClientExcludedOppty"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientExcludedOppties":{"get":{"description":"Returns a page of ClientExcludedOppty records, optionally filtered, sorted and limited to selected fields.","operationId":"ClientExcludedOppties.list","summary":"ClientExcludedOppties.list","tags":["Client"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ClientExcludedOppty records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ClientExcludedOppty"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ClientExcludedOppty record.","operationId":"ClientExcludedOppties.create","summary":"ClientExcludedOppties.create","tags":["Client"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createClientExcludedOpptyInput"}}}},"responses":{"201":{"description":"The created ClientExcludedOppty record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ClientExcludedOppty"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientExcludedOppties/batch-delete":{"post":{"description":"Deletes the ClientExcludedOppty records with the given ids.","operationId":"ClientExcludedOppties.batch_delete","summary":"ClientExcludedOppties.batch_delete","tags":["Client"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientExcludedOppties/batch-modify":{"post":{"description":"Creates or updates ClientExcludedOppty records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ClientExcludedOppties.batch_create_or_update","summary":"ClientExcludedOppties.batch_create_or_update","tags":["Client"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchClientExcludedOpptyInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientExcludedOppties/batch-restore":{"post":{"description":"Restores the deleted ClientExcludedOppty records with the given ids.","operationId":"ClientExcludedOppties.batch_restore","summary":"ClientExcludedOppties.batch_restore","tags":["Client"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientFavorites/{id}":{"get":{"description":"Returns the ClientFavorite record with the given id.","operationId":"ClientFavorites.get","summary":"ClientFavorites.get","tags":["Client"],"parameters":[{"name":"id","in":"path","description":"Id of the ClientFavorite record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ClientFavorite record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ClientFavorite"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ClientFavorite record with the given id.","operationId":"ClientFavorites.delete","summary":"ClientFavorites.delete","tags":["Client"],"parameters":[{"name":"id","in":"path","description":"Id of the ClientFavorite record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ClientFavorite record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ClientFavorite record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ClientFavorites.update","summary":"ClientFavorites.update","tags":["Client"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateClientFavoriteInput"}}}},"responses":{"200":{"description":"The changed ClientFavorite record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ClientFavorite"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientFavorites":{"get":{"description":"Returns a page of ClientFavorite records, optionally filtered, sorted and limited to selected fields.","operationId":"ClientFavorites.list","summary":"ClientFavorites.list","tags":["Client"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ClientFavorite records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ClientFavorite"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ClientFavorite record.","operationId":"ClientFavorites.create","summary":"ClientFavorites.create","tags":["Client"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createClientFavoriteInput"}}}},"responses":{"201":{"description":"The created ClientFavorite record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ClientFavorite"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientFavorites/batch-delete":{"post":{"description":"Deletes the ClientFavorite records with the given ids.","operationId":"ClientFavorites.batch_delete","summary":"ClientFavorites.batch_delete","tags":["Client"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientFavorites/batch-modify":{"post":{"description":"Creates or updates ClientFavorite records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ClientFavorites.batch_create_or_update","summary":"ClientFavorites.batch_create_or_update","tags":["Client"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchClientFavoriteInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientFavorites/batch-restore":{"post":{"description":"Restores the deleted ClientFavorite records with the given ids.","operationId":"ClientFavorites.batch_restore","summary":"ClientFavorites.batch_restore","tags":["Client"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientSettings/{id}":{"get":{"description":"Returns the ClientSetting record with the given id.","operationId":"ClientSettings.get","summary":"ClientSettings.get","tags":["Client"],"parameters":[{"name":"id","in":"path","description":"Id of the ClientSetting record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ClientSetting record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ClientSetting"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientSettings":{"get":{"description":"Returns a page of ClientSetting records, optionally filtered, sorted and limited to selected fields.","operationId":"ClientSettings.list","summary":"ClientSettings.list","tags":["Client"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ClientSetting records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ClientSetting"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientStoryReads/{id}":{"get":{"description":"Returns the ClientStoryRead record with the given id.","operationId":"ClientStoryReads.get","summary":"ClientStoryReads.get","tags":["Client"],"parameters":[{"name":"id","in":"path","description":"Id of the ClientStoryRead record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ClientStoryRead record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ClientStoryRead"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ClientStoryRead record with the given id.","operationId":"ClientStoryReads.delete","summary":"ClientStoryReads.delete","tags":["Client"],"parameters":[{"name":"id","in":"path","description":"Id of the ClientStoryRead record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ClientStoryRead record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ClientStoryRead record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ClientStoryReads.update","summary":"ClientStoryReads.update","tags":["Client"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateClientStoryReadInput"}}}},"responses":{"200":{"description":"The changed ClientStoryRead record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ClientStoryRead"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientStoryReads":{"get":{"description":"Returns a page of ClientStoryRead records, optionally filtered, sorted and limited to selected fields.","operationId":"ClientStoryReads.list","summary":"ClientStoryReads.list","tags":["Client"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ClientStoryRead records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ClientStoryRead"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ClientStoryRead record.","operationId":"ClientStoryReads.create","summary":"ClientStoryReads.create","tags":["Client"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createClientStoryReadInput"}}}},"responses":{"201":{"description":"The created ClientStoryRead record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ClientStoryRead"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientStoryReads/batch-delete":{"post":{"description":"Deletes the ClientStoryRead records with the given ids.","operationId":"ClientStoryReads.batch_delete","summary":"ClientStoryReads.batch_delete","tags":["Client"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientStoryReads/batch-modify":{"post":{"description":"Creates or updates ClientStoryRead records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ClientStoryReads.batch_create_or_update","summary":"ClientStoryReads.batch_create_or_update","tags":["Client"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchClientStoryReadInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ClientStoryReads/batch-restore":{"post":{"description":"Restores the deleted ClientStoryRead records with the given ids.","operationId":"ClientStoryReads.batch_restore","summary":"ClientStoryReads.batch_restore","tags":["Client"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjects/{id}":{"get":{"description":"Returns the CloudObject record with the given id.","operationId":"CloudObjects.get","summary":"CloudObjects.get","tags":["Document"],"parameters":[{"name":"id","in":"path","description":"Id of the CloudObject record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The CloudObject record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObject"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the CloudObject record with the given id.","operationId":"CloudObjects.delete","summary":"CloudObjects.delete","tags":["Document"],"parameters":[{"name":"id","in":"path","description":"Id of the CloudObject record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the CloudObject record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the CloudObject record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"CloudObjects.update","summary":"CloudObjects.update","tags":["Document"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCloudObjectInput"}}}},"responses":{"200":{"description":"The changed CloudObject record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObject"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjects":{"get":{"description":"Returns a page of CloudObject records, optionally filtered, sorted and limited to selected fields.","operationId":"CloudObjects.list","summary":"CloudObjects.list","tags":["Document"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of CloudObject records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/CloudObject"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a CloudObject record.","operationId":"CloudObjects.create","summary":"CloudObjects.create","tags":["Document"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createCloudObjectInput"}}}},"responses":{"201":{"description":"The created CloudObject record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObject"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjects/batch-delete":{"post":{"description":"Deletes the CloudObject records with the given ids.","operationId":"CloudObjects.batch_delete","summary":"CloudObjects.batch_delete","tags":["Document"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjects/batch-modify":{"post":{"description":"Creates or updates CloudObject records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"CloudObjects.batch_create_or_update","summary":"CloudObjects.batch_create_or_update","tags":["Document"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchCloudObjectInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjects/batch-restore":{"post":{"description":"Restores the deleted CloudObject records with the given ids.","operationId":"CloudObjects.batch_restore","summary":"CloudObjects.batch_restore","tags":["Document"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectFolders/{id}":{"get":{"description":"Returns the CloudObjectFolder record with the given id.","operationId":"CloudObjectFolders.get","summary":"CloudObjectFolders.get","tags":["Document"],"parameters":[{"name":"id","in":"path","description":"Id of the CloudObjectFolder record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The CloudObjectFolder record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObjectFolder"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the CloudObjectFolder record with the given id.","operationId":"CloudObjectFolders.delete","summary":"CloudObjectFolders.delete","tags":["Document"],"parameters":[{"name":"id","in":"path","description":"Id of the CloudObjectFolder record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the CloudObjectFolder record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the CloudObjectFolder record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"CloudObjectFolders.update","summary":"CloudObjectFolders.update","tags":["Document"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCloudObjectFolderInput"}}}},"responses":{"200":{"description":"The changed CloudObjectFolder record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObjectFolder"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectFolders":{"get":{"description":"Returns a page of CloudObjectFolder records, optionally filtered, sorted and limited to selected fields.","operationId":"CloudObjectFolders.list","summary":"CloudObjectFolders.list","tags":["Document"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of CloudObjectFolder records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/CloudObjectFolder"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a CloudObjectFolder record.","operationId":"CloudObjectFolders.create","summary":"CloudObjectFolders.create","tags":["Document"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createCloudObjectFolderInput"}}}},"responses":{"201":{"description":"The created CloudObjectFolder record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObjectFolder"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectFolders/batch-delete":{"post":{"description":"Deletes the CloudObjectFolder records with the given ids.","operationId":"CloudObjectFolders.batch_delete","summary":"CloudObjectFolders.batch_delete","tags":["Document"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectFolders/batch-modify":{"post":{"description":"Creates or updates CloudObjectFolder records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"CloudObjectFolders.batch_create_or_update","summary":"CloudObjectFolders.batch_create_or_update","tags":["Document"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchCloudObjectFolderInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectFolders/batch-restore":{"post":{"description":"Restores the deleted CloudObjectFolder records with the given ids.","operationId":"CloudObjectFolders.batch_restore","summary":"CloudObjectFolders.batch_restore","tags":["Document"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectRelations/{id}":{"get":{"description":"Returns the CloudObjectRelation record with the given id.","operationId":"CloudObjectRelations.get","summary":"CloudObjectRelations.get","tags":["Document"],"parameters":[{"name":"id","in":"path","description":"Id of the CloudObjectRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The CloudObjectRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObjectRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the CloudObjectRelation record with the given id.","operationId":"CloudObjectRelations.delete","summary":"CloudObjectRelations.delete","tags":["Document"],"parameters":[{"name":"id","in":"path","description":"Id of the CloudObjectRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the CloudObjectRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the CloudObjectRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"CloudObjectRelations.update","summary":"CloudObjectRelations.update","tags":["Document"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCloudObjectRelationInput"}}}},"responses":{"200":{"description":"The changed CloudObjectRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObjectRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectRelations":{"get":{"description":"Returns a page of CloudObjectRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"CloudObjectRelations.list","summary":"CloudObjectRelations.list","tags":["Document"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of CloudObjectRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/CloudObjectRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a CloudObjectRelation record.","operationId":"CloudObjectRelations.create","summary":"CloudObjectRelations.create","tags":["Document"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createCloudObjectRelationInput"}}}},"responses":{"201":{"description":"The created CloudObjectRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObjectRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectRelations/batch-delete":{"post":{"description":"Deletes the CloudObjectRelation records with the given ids.","operationId":"CloudObjectRelations.batch_delete","summary":"CloudObjectRelations.batch_delete","tags":["Document"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectRelations/batch-modify":{"post":{"description":"Creates or updates CloudObjectRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"CloudObjectRelations.batch_create_or_update","summary":"CloudObjectRelations.batch_create_or_update","tags":["Document"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchCloudObjectRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectRelations/batch-restore":{"post":{"description":"Restores the deleted CloudObjectRelation records with the given ids.","operationId":"CloudObjectRelations.batch_restore","summary":"CloudObjectRelations.batch_restore","tags":["Document"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectStepRelations/{id}":{"get":{"description":"Returns the CloudObjectStepRelation record with the given id.","operationId":"CloudObjectStepRelations.get","summary":"CloudObjectStepRelations.get","tags":["Document"],"parameters":[{"name":"id","in":"path","description":"Id of the CloudObjectStepRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The CloudObjectStepRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObjectStepRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the CloudObjectStepRelation record with the given id.","operationId":"CloudObjectStepRelations.delete","summary":"CloudObjectStepRelations.delete","tags":["Document"],"parameters":[{"name":"id","in":"path","description":"Id of the CloudObjectStepRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the CloudObjectStepRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the CloudObjectStepRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"CloudObjectStepRelations.update","summary":"CloudObjectStepRelations.update","tags":["Document"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCloudObjectStepRelationInput"}}}},"responses":{"200":{"description":"The changed CloudObjectStepRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObjectStepRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectStepRelations":{"get":{"description":"Returns a page of CloudObjectStepRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"CloudObjectStepRelations.list","summary":"CloudObjectStepRelations.list","tags":["Document"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of CloudObjectStepRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/CloudObjectStepRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a CloudObjectStepRelation record.","operationId":"CloudObjectStepRelations.create","summary":"CloudObjectStepRelations.create","tags":["Document"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createCloudObjectStepRelationInput"}}}},"responses":{"201":{"description":"The created CloudObjectStepRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObjectStepRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectStepRelations/batch-delete":{"post":{"description":"Deletes the CloudObjectStepRelation records with the given ids.","operationId":"CloudObjectStepRelations.batch_delete","summary":"CloudObjectStepRelations.batch_delete","tags":["Document"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectStepRelations/batch-modify":{"post":{"description":"Creates or updates CloudObjectStepRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"CloudObjectStepRelations.batch_create_or_update","summary":"CloudObjectStepRelations.batch_create_or_update","tags":["Document"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchCloudObjectStepRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectStepRelations/batch-restore":{"post":{"description":"Restores the deleted CloudObjectStepRelation records with the given ids.","operationId":"CloudObjectStepRelations.batch_restore","summary":"CloudObjectStepRelations.batch_restore","tags":["Document"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectTemplates/{id}":{"get":{"description":"Returns the CloudObjectTemplate record with the given id.","operationId":"CloudObjectTemplates.get","summary":"CloudObjectTemplates.get","tags":["Document"],"parameters":[{"name":"id","in":"path","description":"Id of the CloudObjectTemplate record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The CloudObjectTemplate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObjectTemplate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the CloudObjectTemplate record with the given id.","operationId":"CloudObjectTemplates.delete","summary":"CloudObjectTemplates.delete","tags":["Document"],"parameters":[{"name":"id","in":"path","description":"Id of the CloudObjectTemplate record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the CloudObjectTemplate record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the CloudObjectTemplate record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"CloudObjectTemplates.update","summary":"CloudObjectTemplates.update","tags":["Document"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCloudObjectTemplateInput"}}}},"responses":{"200":{"description":"The changed CloudObjectTemplate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObjectTemplate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectTemplates":{"get":{"description":"Returns a page of CloudObjectTemplate records, optionally filtered, sorted and limited to selected fields.","operationId":"CloudObjectTemplates.list","summary":"CloudObjectTemplates.list","tags":["Document"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of CloudObjectTemplate records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/CloudObjectTemplate"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a CloudObjectTemplate record.","operationId":"CloudObjectTemplates.create","summary":"CloudObjectTemplates.create","tags":["Document"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createCloudObjectTemplateInput"}}}},"responses":{"201":{"description":"The created CloudObjectTemplate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CloudObjectTemplate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectTemplates/batch-delete":{"post":{"description":"Deletes the CloudObjectTemplate records with the given ids.","operationId":"CloudObjectTemplates.batch_delete","summary":"CloudObjectTemplates.batch_delete","tags":["Document"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectTemplates/batch-modify":{"post":{"description":"Creates or updates CloudObjectTemplate records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"CloudObjectTemplates.batch_create_or_update","summary":"CloudObjectTemplates.batch_create_or_update","tags":["Document"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchCloudObjectTemplateInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CloudObjectTemplates/batch-restore":{"post":{"description":"Restores the deleted CloudObjectTemplate records with the given ids.","operationId":"CloudObjectTemplates.batch_restore","summary":"CloudObjectTemplates.batch_restore","tags":["Document"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CompanyEmails/{id}":{"get":{"description":"Returns the CompanyEmail record with the given id.","operationId":"CompanyEmails.get","summary":"CompanyEmails.get","tags":["Company Email"],"parameters":[{"name":"id","in":"path","description":"Id of the CompanyEmail record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The CompanyEmail record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CompanyEmail"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CompanyEmails":{"get":{"description":"Returns a page of CompanyEmail records, optionally filtered, sorted and limited to selected fields.","operationId":"CompanyEmails.list","summary":"CompanyEmails.list","tags":["Company Email"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of CompanyEmail records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/CompanyEmail"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Contacts/{id}":{"get":{"description":"Returns one contact by id. `expand` returns related records inline instead of their URIs.","operationId":"Contacts.get","summary":"Get a contact","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the Contact record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Contact record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Contact"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Soft-deletes one contact and answers with its id. Its account relations stay active.","operationId":"Contacts.delete","summary":"Delete a contact","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the Contact record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes the fields you send and leaves the rest as they are; there is no PUT.","parameters":[{"name":"id","in":"path","description":"Id of the Contact record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Contacts.update","summary":"Update a contact","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateContactInput"}}}},"responses":{"200":{"description":"The changed Contact record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Contact"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Contacts":{"get":{"description":"Returns the contacts the API application can read, one page at a time. In the list envelope, `total` counts every match and `page_info` pages through them.","operationId":"Contacts.list","summary":"List contacts","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Contact records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Contact"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates one contact and answers 201 with the record. `owner_id` and a `first_name` or `last_name` are required; the spec marks only `owner_id`.","operationId":"Contacts.create","summary":"Create a contact","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createContactInput"},"example":{"first_name":"Maria","last_name":"Anders","owner_id":"37000000-0000-4000-a000-000000000001","email1":"maria.anders@example.com","position":"Head of Operations"}}}},"responses":{"201":{"description":"The created Contact record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Contact"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Contacts/merge":{"post":{"description":"Merges duplicates into one contact. `master` is the contact to keep, with any field values to keep; the contacts in `secondary_ids` are merged into it.","operationId":"Contacts.merge","summary":"Merge contacts","tags":["Contact"],"parameters":[],"requestBody":{"description":"Master record and the records to merge into it.","required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"master":{"$ref":"#/components/schemas/batchContactInput"},"secondary_ids":{"type":"array","description":"Ids of the records to merge into the master record.","items":{"type":"string","description":"Id of a record to merge.","format":"uuid"}}}}}}},"responses":{"200":{"description":"The merged master record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Contact"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Contacts/batch-delete":{"post":{"description":"Soft-deletes the contacts whose ids are in the body, a JSON array.","operationId":"Contacts.batch_delete","summary":"Delete contacts in a batch","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Contacts/batch-modify":{"post":{"description":"An item with an `id` updates that contact; an item without one creates a contact. By default one invalid item fails the whole call with HTTP 422; with `rollback-method=1` the response has an id or an error for each item, in input order.","operationId":"Contacts.batch_create_or_update","summary":"Create or update contacts in a batch","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchContactInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Contacts/batch-restore":{"post":{"description":"Restores the soft-deleted contacts whose ids are in the body, a JSON array.","operationId":"Contacts.batch_restore","summary":"Restore deleted contacts","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactAccountAccountRoleRelations/{id}":{"get":{"description":"Returns the ContactAccountAccountRoleRelation record with the given id.","operationId":"ContactAccountAccountRoleRelations.get","summary":"ContactAccountAccountRoleRelations.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactAccountAccountRoleRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ContactAccountAccountRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactAccountAccountRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ContactAccountAccountRoleRelation record with the given id.","operationId":"ContactAccountAccountRoleRelations.delete","summary":"ContactAccountAccountRoleRelations.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactAccountAccountRoleRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ContactAccountAccountRoleRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ContactAccountAccountRoleRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ContactAccountAccountRoleRelations.update","summary":"ContactAccountAccountRoleRelations.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateContactAccountAccountRoleRelationInput"}}}},"responses":{"200":{"description":"The changed ContactAccountAccountRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactAccountAccountRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactAccountAccountRoleRelations":{"get":{"description":"Returns a page of ContactAccountAccountRoleRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ContactAccountAccountRoleRelations.list","summary":"ContactAccountAccountRoleRelations.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ContactAccountAccountRoleRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ContactAccountAccountRoleRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ContactAccountAccountRoleRelation record.","operationId":"ContactAccountAccountRoleRelations.create","summary":"ContactAccountAccountRoleRelations.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createContactAccountAccountRoleRelationInput"}}}},"responses":{"201":{"description":"The created ContactAccountAccountRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactAccountAccountRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactAccountAccountRoleRelations/batch-delete":{"post":{"description":"Deletes the ContactAccountAccountRoleRelation records with the given ids.","operationId":"ContactAccountAccountRoleRelations.batch_delete","summary":"ContactAccountAccountRoleRelations.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactAccountAccountRoleRelations/batch-modify":{"post":{"description":"Creates or updates ContactAccountAccountRoleRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ContactAccountAccountRoleRelations.batch_create_or_update","summary":"ContactAccountAccountRoleRelations.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchContactAccountAccountRoleRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactAccountAccountRoleRelations/batch-restore":{"post":{"description":"Restores the deleted ContactAccountAccountRoleRelation records with the given ids.","operationId":"ContactAccountAccountRoleRelations.batch_restore","summary":"ContactAccountAccountRoleRelations.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactAccountRelations/{id}":{"get":{"description":"Returns the ContactAccountRelation record with the given id.","operationId":"ContactAccountRelations.get","summary":"ContactAccountRelations.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactAccountRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ContactAccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactAccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ContactAccountRelation record with the given id.","operationId":"ContactAccountRelations.delete","summary":"ContactAccountRelations.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactAccountRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ContactAccountRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ContactAccountRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ContactAccountRelations.update","summary":"ContactAccountRelations.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateContactAccountRelationInput"}}}},"responses":{"200":{"description":"The changed ContactAccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactAccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactAccountRelations":{"get":{"description":"Returns a page of ContactAccountRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ContactAccountRelations.list","summary":"ContactAccountRelations.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ContactAccountRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ContactAccountRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ContactAccountRelation record.","operationId":"ContactAccountRelations.create","summary":"ContactAccountRelations.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createContactAccountRelationInput"}}}},"responses":{"201":{"description":"The created ContactAccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactAccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactAccountRelations/batch-delete":{"post":{"description":"Deletes the ContactAccountRelation records with the given ids.","operationId":"ContactAccountRelations.batch_delete","summary":"ContactAccountRelations.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactAccountRelations/batch-modify":{"post":{"description":"Creates or updates ContactAccountRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ContactAccountRelations.batch_create_or_update","summary":"ContactAccountRelations.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchContactAccountRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactAccountRelations/batch-restore":{"post":{"description":"Restores the deleted ContactAccountRelation records with the given ids.","operationId":"ContactAccountRelations.batch_restore","summary":"ContactAccountRelations.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactDataExRelations/{id}":{"get":{"description":"Returns the ContactDataExRelation record with the given id.","operationId":"ContactDataExRelations.get","summary":"ContactDataExRelations.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactDataExRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ContactDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactDataExRelations":{"get":{"description":"Returns a page of ContactDataExRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ContactDataExRelations.list","summary":"ContactDataExRelations.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ContactDataExRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ContactDataExRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactKPIs/{id}":{"get":{"description":"Returns the ContactKPI record with the given id.","operationId":"ContactKPIs.get","summary":"ContactKPIs.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactKPI record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ContactKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ContactKPI record with the given id.","operationId":"ContactKPIs.delete","summary":"ContactKPIs.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactKPI record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ContactKPI record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ContactKPI record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ContactKPIs.update","summary":"ContactKPIs.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateContactKPIInput"}}}},"responses":{"200":{"description":"The changed ContactKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactKPIs":{"get":{"description":"Returns a page of ContactKPI records, optionally filtered, sorted and limited to selected fields.","operationId":"ContactKPIs.list","summary":"ContactKPIs.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ContactKPI records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ContactKPI"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ContactKPI record.","operationId":"ContactKPIs.create","summary":"ContactKPIs.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createContactKPIInput"}}}},"responses":{"201":{"description":"The created ContactKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactKPIs/batch-delete":{"post":{"description":"Deletes the ContactKPI records with the given ids.","operationId":"ContactKPIs.batch_delete","summary":"ContactKPIs.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactKPIs/batch-modify":{"post":{"description":"Creates or updates ContactKPI records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ContactKPIs.batch_create_or_update","summary":"ContactKPIs.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchContactKPIInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactKPIs/batch-restore":{"post":{"description":"Restores the deleted ContactKPI records with the given ids.","operationId":"ContactKPIs.batch_restore","summary":"ContactKPIs.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelations/{id}":{"get":{"description":"Returns the ContactRelation record with the given id.","operationId":"ContactRelations.get","summary":"ContactRelations.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ContactRelation record with the given id.","operationId":"ContactRelations.delete","summary":"ContactRelations.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ContactRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ContactRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ContactRelations.update","summary":"ContactRelations.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateContactRelationInput"}}}},"responses":{"200":{"description":"The changed ContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelations":{"get":{"description":"Returns a page of ContactRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ContactRelations.list","summary":"ContactRelations.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ContactRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ContactRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ContactRelation record.","operationId":"ContactRelations.create","summary":"ContactRelations.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createContactRelationInput"}}}},"responses":{"201":{"description":"The created ContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelations/batch-delete":{"post":{"description":"Deletes the ContactRelation records with the given ids.","operationId":"ContactRelations.batch_delete","summary":"ContactRelations.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelations/batch-modify":{"post":{"description":"Creates or updates ContactRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ContactRelations.batch_create_or_update","summary":"ContactRelations.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchContactRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelations/batch-restore":{"post":{"description":"Restores the deleted ContactRelation records with the given ids.","operationId":"ContactRelations.batch_restore","summary":"ContactRelations.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelationLabels/{id}":{"get":{"description":"Returns the ContactRelationLabel record with the given id.","operationId":"ContactRelationLabels.get","summary":"ContactRelationLabels.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactRelationLabel record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ContactRelationLabel record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactRelationLabel"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ContactRelationLabel record with the given id.","operationId":"ContactRelationLabels.delete","summary":"ContactRelationLabels.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactRelationLabel record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ContactRelationLabel record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ContactRelationLabel record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ContactRelationLabels.update","summary":"ContactRelationLabels.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateContactRelationLabelInput"}}}},"responses":{"200":{"description":"The changed ContactRelationLabel record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactRelationLabel"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelationLabels":{"get":{"description":"Returns a page of ContactRelationLabel records, optionally filtered, sorted and limited to selected fields.","operationId":"ContactRelationLabels.list","summary":"ContactRelationLabels.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ContactRelationLabel records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ContactRelationLabel"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ContactRelationLabel record.","operationId":"ContactRelationLabels.create","summary":"ContactRelationLabels.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createContactRelationLabelInput"}}}},"responses":{"201":{"description":"The created ContactRelationLabel record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactRelationLabel"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelationLabels/batch-delete":{"post":{"description":"Deletes the ContactRelationLabel records with the given ids.","operationId":"ContactRelationLabels.batch_delete","summary":"ContactRelationLabels.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelationLabels/batch-modify":{"post":{"description":"Creates or updates ContactRelationLabel records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ContactRelationLabels.batch_create_or_update","summary":"ContactRelationLabels.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchContactRelationLabelInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelationLabels/batch-restore":{"post":{"description":"Restores the deleted ContactRelationLabel records with the given ids.","operationId":"ContactRelationLabels.batch_restore","summary":"ContactRelationLabels.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelationTypes/{id}":{"get":{"description":"Returns the ContactRelationType record with the given id.","operationId":"ContactRelationTypes.get","summary":"ContactRelationTypes.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactRelationType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ContactRelationType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactRelationType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ContactRelationType record with the given id.","operationId":"ContactRelationTypes.delete","summary":"ContactRelationTypes.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactRelationType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ContactRelationType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ContactRelationType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ContactRelationTypes.update","summary":"ContactRelationTypes.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateContactRelationTypeInput"}}}},"responses":{"200":{"description":"The changed ContactRelationType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactRelationType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelationTypes":{"get":{"description":"Returns a page of ContactRelationType records, optionally filtered, sorted and limited to selected fields.","operationId":"ContactRelationTypes.list","summary":"ContactRelationTypes.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ContactRelationType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ContactRelationType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ContactRelationType record.","operationId":"ContactRelationTypes.create","summary":"ContactRelationTypes.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createContactRelationTypeInput"}}}},"responses":{"201":{"description":"The created ContactRelationType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactRelationType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelationTypes/batch-delete":{"post":{"description":"Deletes the ContactRelationType records with the given ids.","operationId":"ContactRelationTypes.batch_delete","summary":"ContactRelationTypes.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelationTypes/batch-modify":{"post":{"description":"Creates or updates ContactRelationType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ContactRelationTypes.batch_create_or_update","summary":"ContactRelationTypes.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchContactRelationTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactRelationTypes/batch-restore":{"post":{"description":"Restores the deleted ContactRelationType records with the given ids.","operationId":"ContactRelationTypes.batch_restore","summary":"ContactRelationTypes.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSharingClientRelations/{id}":{"get":{"description":"Returns the ContactSharingClientRelation record with the given id.","operationId":"ContactSharingClientRelations.get","summary":"ContactSharingClientRelations.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactSharingClientRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ContactSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ContactSharingClientRelation record with the given id.","operationId":"ContactSharingClientRelations.delete","summary":"ContactSharingClientRelations.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactSharingClientRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ContactSharingClientRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ContactSharingClientRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ContactSharingClientRelations.update","summary":"ContactSharingClientRelations.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateContactSharingClientRelationInput"}}}},"responses":{"200":{"description":"The changed ContactSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSharingClientRelations":{"get":{"description":"Returns a page of ContactSharingClientRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ContactSharingClientRelations.list","summary":"ContactSharingClientRelations.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ContactSharingClientRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ContactSharingClientRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ContactSharingClientRelation record.","operationId":"ContactSharingClientRelations.create","summary":"ContactSharingClientRelations.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createContactSharingClientRelationInput"}}}},"responses":{"201":{"description":"The created ContactSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSharingClientRelations/batch-delete":{"post":{"description":"Deletes the ContactSharingClientRelation records with the given ids.","operationId":"ContactSharingClientRelations.batch_delete","summary":"ContactSharingClientRelations.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSharingClientRelations/batch-modify":{"post":{"description":"Creates or updates ContactSharingClientRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ContactSharingClientRelations.batch_create_or_update","summary":"ContactSharingClientRelations.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchContactSharingClientRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSharingClientRelations/batch-restore":{"post":{"description":"Restores the deleted ContactSharingClientRelation records with the given ids.","operationId":"ContactSharingClientRelations.batch_restore","summary":"ContactSharingClientRelations.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSharingSalesUnitRelations/{id}":{"get":{"description":"Returns the ContactSharingSalesUnitRelation record with the given id.","operationId":"ContactSharingSalesUnitRelations.get","summary":"ContactSharingSalesUnitRelations.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactSharingSalesUnitRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ContactSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ContactSharingSalesUnitRelation record with the given id.","operationId":"ContactSharingSalesUnitRelations.delete","summary":"ContactSharingSalesUnitRelations.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactSharingSalesUnitRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ContactSharingSalesUnitRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ContactSharingSalesUnitRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ContactSharingSalesUnitRelations.update","summary":"ContactSharingSalesUnitRelations.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateContactSharingSalesUnitRelationInput"}}}},"responses":{"200":{"description":"The changed ContactSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSharingSalesUnitRelations":{"get":{"description":"Returns a page of ContactSharingSalesUnitRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ContactSharingSalesUnitRelations.list","summary":"ContactSharingSalesUnitRelations.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ContactSharingSalesUnitRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ContactSharingSalesUnitRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ContactSharingSalesUnitRelation record.","operationId":"ContactSharingSalesUnitRelations.create","summary":"ContactSharingSalesUnitRelations.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createContactSharingSalesUnitRelationInput"}}}},"responses":{"201":{"description":"The created ContactSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSharingSalesUnitRelations/batch-delete":{"post":{"description":"Deletes the ContactSharingSalesUnitRelation records with the given ids.","operationId":"ContactSharingSalesUnitRelations.batch_delete","summary":"ContactSharingSalesUnitRelations.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSharingSalesUnitRelations/batch-modify":{"post":{"description":"Creates or updates ContactSharingSalesUnitRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ContactSharingSalesUnitRelations.batch_create_or_update","summary":"ContactSharingSalesUnitRelations.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchContactSharingSalesUnitRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSharingSalesUnitRelations/batch-restore":{"post":{"description":"Restores the deleted ContactSharingSalesUnitRelation records with the given ids.","operationId":"ContactSharingSalesUnitRelations.batch_restore","summary":"ContactSharingSalesUnitRelations.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSocialRelations/{id}":{"get":{"description":"Returns the ContactSocialRelation record with the given id.","operationId":"ContactSocialRelations.get","summary":"ContactSocialRelations.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactSocialRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ContactSocialRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactSocialRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ContactSocialRelation record with the given id.","operationId":"ContactSocialRelations.delete","summary":"ContactSocialRelations.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactSocialRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ContactSocialRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ContactSocialRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ContactSocialRelations.update","summary":"ContactSocialRelations.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateContactSocialRelationInput"}}}},"responses":{"200":{"description":"The changed ContactSocialRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactSocialRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSocialRelations":{"get":{"description":"Returns a page of ContactSocialRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ContactSocialRelations.list","summary":"ContactSocialRelations.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ContactSocialRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ContactSocialRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ContactSocialRelation record.","operationId":"ContactSocialRelations.create","summary":"ContactSocialRelations.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createContactSocialRelationInput"}}}},"responses":{"201":{"description":"The created ContactSocialRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactSocialRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSocialRelations/batch-delete":{"post":{"description":"Deletes the ContactSocialRelation records with the given ids.","operationId":"ContactSocialRelations.batch_delete","summary":"ContactSocialRelations.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSocialRelations/batch-modify":{"post":{"description":"Creates or updates ContactSocialRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ContactSocialRelations.batch_create_or_update","summary":"ContactSocialRelations.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchContactSocialRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactSocialRelations/batch-restore":{"post":{"description":"Restores the deleted ContactSocialRelation records with the given ids.","operationId":"ContactSocialRelations.batch_restore","summary":"ContactSocialRelations.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactTypes/{id}":{"get":{"description":"Returns the ContactType record with the given id.","operationId":"ContactTypes.get","summary":"ContactTypes.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ContactType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ContactType record with the given id.","operationId":"ContactTypes.delete","summary":"ContactTypes.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the ContactType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ContactType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ContactType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ContactTypes.update","summary":"ContactTypes.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateContactTypeInput"}}}},"responses":{"200":{"description":"The changed ContactType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactTypes":{"get":{"description":"Returns a page of ContactType records, optionally filtered, sorted and limited to selected fields.","operationId":"ContactTypes.list","summary":"ContactTypes.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ContactType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ContactType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ContactType record.","operationId":"ContactTypes.create","summary":"ContactTypes.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createContactTypeInput"}}}},"responses":{"201":{"description":"The created ContactType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ContactType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactTypes/batch-delete":{"post":{"description":"Deletes the ContactType records with the given ids.","operationId":"ContactTypes.batch_delete","summary":"ContactTypes.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactTypes/batch-modify":{"post":{"description":"Creates or updates ContactType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ContactTypes.batch_create_or_update","summary":"ContactTypes.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchContactTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ContactTypes/batch-restore":{"post":{"description":"Restores the deleted ContactType records with the given ids.","operationId":"ContactTypes.batch_restore","summary":"ContactTypes.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CountryCrms/{id}":{"get":{"description":"Returns the CountryCrm record with the given id.","operationId":"CountryCrms.get","summary":"CountryCrms.get","tags":["Country"],"parameters":[{"name":"id","in":"path","description":"Id of the CountryCrm record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The CountryCrm record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CountryCrm"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the CountryCrm record with the given id.","operationId":"CountryCrms.delete","summary":"CountryCrms.delete","tags":["Country"],"parameters":[{"name":"id","in":"path","description":"Id of the CountryCrm record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the CountryCrm record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the CountryCrm record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"CountryCrms.update","summary":"CountryCrms.update","tags":["Country"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCountryCrmInput"}}}},"responses":{"200":{"description":"The changed CountryCrm record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CountryCrm"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CountryCrms":{"get":{"description":"Returns a page of CountryCrm records, optionally filtered, sorted and limited to selected fields.","operationId":"CountryCrms.list","summary":"CountryCrms.list","tags":["Country"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of CountryCrm records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/CountryCrm"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a CountryCrm record.","operationId":"CountryCrms.create","summary":"CountryCrms.create","tags":["Country"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createCountryCrmInput"}}}},"responses":{"201":{"description":"The created CountryCrm record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CountryCrm"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CountryCrms/batch-delete":{"post":{"description":"Deletes the CountryCrm records with the given ids.","operationId":"CountryCrms.batch_delete","summary":"CountryCrms.batch_delete","tags":["Country"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CountryCrms/batch-modify":{"post":{"description":"Creates or updates CountryCrm records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"CountryCrms.batch_create_or_update","summary":"CountryCrms.batch_create_or_update","tags":["Country"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchCountryCrmInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CountryCrms/batch-restore":{"post":{"description":"Restores the deleted CountryCrm records with the given ids.","operationId":"CountryCrms.batch_restore","summary":"CountryCrms.batch_restore","tags":["Country"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Currencies/{id}":{"get":{"description":"Returns the Currency record with the given id.","operationId":"Currencies.get","summary":"Currencies.get","tags":["Currency"],"parameters":[{"name":"id","in":"path","description":"Id of the Currency record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Currency record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Currency"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Currency record with the given id.","operationId":"Currencies.delete","summary":"Currencies.delete","tags":["Currency"],"parameters":[{"name":"id","in":"path","description":"Id of the Currency record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Currency record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Currency record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Currencies.update","summary":"Currencies.update","tags":["Currency"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCurrencyInput"}}}},"responses":{"200":{"description":"The changed Currency record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Currency"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Currencies":{"get":{"description":"Returns a page of Currency records, optionally filtered, sorted and limited to selected fields.","operationId":"Currencies.list","summary":"Currencies.list","tags":["Currency"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Currency records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Currency"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Currency record.","operationId":"Currencies.create","summary":"Currencies.create","tags":["Currency"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createCurrencyInput"}}}},"responses":{"201":{"description":"The created Currency record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Currency"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Currencies/batch-delete":{"post":{"description":"Deletes the Currency records with the given ids.","operationId":"Currencies.batch_delete","summary":"Currencies.batch_delete","tags":["Currency"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Currencies/batch-modify":{"post":{"description":"Creates or updates Currency records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Currencies.batch_create_or_update","summary":"Currencies.batch_create_or_update","tags":["Currency"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchCurrencyInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Currencies/batch-restore":{"post":{"description":"Restores the deleted Currency records with the given ids.","operationId":"Currencies.batch_restore","summary":"Currencies.batch_restore","tags":["Currency"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CurrencyExchangeRates/{id}":{"get":{"description":"Returns the CurrencyExchangeRate record with the given id.","operationId":"CurrencyExchangeRates.get","summary":"CurrencyExchangeRates.get","tags":["Currency"],"parameters":[{"name":"id","in":"path","description":"Id of the CurrencyExchangeRate record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The CurrencyExchangeRate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CurrencyExchangeRate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the CurrencyExchangeRate record with the given id.","operationId":"CurrencyExchangeRates.delete","summary":"CurrencyExchangeRates.delete","tags":["Currency"],"parameters":[{"name":"id","in":"path","description":"Id of the CurrencyExchangeRate record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the CurrencyExchangeRate record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the CurrencyExchangeRate record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"CurrencyExchangeRates.update","summary":"CurrencyExchangeRates.update","tags":["Currency"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCurrencyExchangeRateInput"}}}},"responses":{"200":{"description":"The changed CurrencyExchangeRate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CurrencyExchangeRate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CurrencyExchangeRates":{"get":{"description":"Returns a page of CurrencyExchangeRate records, optionally filtered, sorted and limited to selected fields.","operationId":"CurrencyExchangeRates.list","summary":"CurrencyExchangeRates.list","tags":["Currency"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of CurrencyExchangeRate records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/CurrencyExchangeRate"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a CurrencyExchangeRate record.","operationId":"CurrencyExchangeRates.create","summary":"CurrencyExchangeRates.create","tags":["Currency"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createCurrencyExchangeRateInput"}}}},"responses":{"201":{"description":"The created CurrencyExchangeRate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CurrencyExchangeRate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CurrencyExchangeRates/batch-delete":{"post":{"description":"Deletes the CurrencyExchangeRate records with the given ids.","operationId":"CurrencyExchangeRates.batch_delete","summary":"CurrencyExchangeRates.batch_delete","tags":["Currency"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CurrencyExchangeRates/batch-modify":{"post":{"description":"Creates or updates CurrencyExchangeRate records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"CurrencyExchangeRates.batch_create_or_update","summary":"CurrencyExchangeRates.batch_create_or_update","tags":["Currency"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchCurrencyExchangeRateInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CurrencyExchangeRates/batch-restore":{"post":{"description":"Restores the deleted CurrencyExchangeRate records with the given ids.","operationId":"CurrencyExchangeRates.batch_restore","summary":"CurrencyExchangeRates.batch_restore","tags":["Currency"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CurrencyExchangeRatesLists/{id}":{"get":{"description":"Returns the CurrencyExchangeRatesList record with the given id.","operationId":"CurrencyExchangeRatesLists.get","summary":"CurrencyExchangeRatesLists.get","tags":["Currency"],"parameters":[{"name":"id","in":"path","description":"Id of the CurrencyExchangeRatesList record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The CurrencyExchangeRatesList record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CurrencyExchangeRatesList"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the CurrencyExchangeRatesList record with the given id.","operationId":"CurrencyExchangeRatesLists.delete","summary":"CurrencyExchangeRatesLists.delete","tags":["Currency"],"parameters":[{"name":"id","in":"path","description":"Id of the CurrencyExchangeRatesList record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the CurrencyExchangeRatesList record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the CurrencyExchangeRatesList record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"CurrencyExchangeRatesLists.update","summary":"CurrencyExchangeRatesLists.update","tags":["Currency"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCurrencyExchangeRatesListInput"}}}},"responses":{"200":{"description":"The changed CurrencyExchangeRatesList record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CurrencyExchangeRatesList"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CurrencyExchangeRatesLists":{"get":{"description":"Returns a page of CurrencyExchangeRatesList records, optionally filtered, sorted and limited to selected fields.","operationId":"CurrencyExchangeRatesLists.list","summary":"CurrencyExchangeRatesLists.list","tags":["Currency"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of CurrencyExchangeRatesList records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/CurrencyExchangeRatesList"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a CurrencyExchangeRatesList record.","operationId":"CurrencyExchangeRatesLists.create","summary":"CurrencyExchangeRatesLists.create","tags":["Currency"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createCurrencyExchangeRatesListInput"}}}},"responses":{"201":{"description":"The created CurrencyExchangeRatesList record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CurrencyExchangeRatesList"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CurrencyExchangeRatesLists/batch-delete":{"post":{"description":"Deletes the CurrencyExchangeRatesList records with the given ids.","operationId":"CurrencyExchangeRatesLists.batch_delete","summary":"CurrencyExchangeRatesLists.batch_delete","tags":["Currency"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CurrencyExchangeRatesLists/batch-modify":{"post":{"description":"Creates or updates CurrencyExchangeRatesList records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"CurrencyExchangeRatesLists.batch_create_or_update","summary":"CurrencyExchangeRatesLists.batch_create_or_update","tags":["Currency"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchCurrencyExchangeRatesListInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/CurrencyExchangeRatesLists/batch-restore":{"post":{"description":"Restores the deleted CurrencyExchangeRatesList records with the given ids.","operationId":"CurrencyExchangeRatesLists.batch_restore","summary":"CurrencyExchangeRatesLists.batch_restore","tags":["Currency"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/{custom_entity_api_name}/{id}":{"get":{"description":"Returns the CustomEntity record with the given id.","operationId":"{custom_entity_api_name}.get","summary":"CustomEntities.get","tags":["Custom Entity"],"parameters":[{"name":"custom_entity_api_name","in":"path","description":"API name of the custom entity whose records to work with.","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","description":"Id of the CustomEntity record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The CustomEntity record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CustomEntity"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the CustomEntity record with the given id.","operationId":"{custom_entity_api_name}.delete","summary":"CustomEntities.delete","tags":["Custom Entity"],"parameters":[{"name":"custom_entity_api_name","in":"path","description":"API name of the custom entity whose records to work with.","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","description":"Id of the CustomEntity record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the CustomEntity record with the given id; fields left out keep their values.","parameters":[{"name":"custom_entity_api_name","in":"path","description":"API name of the custom entity whose records to work with.","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","description":"Id of the CustomEntity record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"{custom_entity_api_name}.update","summary":"CustomEntities.update","tags":["Custom Entity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCustomEntityInput"}}}},"responses":{"200":{"description":"The changed CustomEntity record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CustomEntity"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/{custom_entity_api_name}":{"get":{"description":"Returns a page of CustomEntity records, optionally filtered, sorted and limited to selected fields.","operationId":"{custom_entity_api_name}.list","summary":"CustomEntities.list","tags":["Custom Entity"],"parameters":[{"name":"custom_entity_api_name","in":"path","description":"API name of the custom entity whose records to work with.","required":true,"schema":{"type":"string"}},{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of CustomEntity records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/CustomEntity"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a CustomEntity record.","operationId":"{custom_entity_api_name}.create","summary":"CustomEntities.create","tags":["Custom Entity"],"parameters":[{"name":"custom_entity_api_name","in":"path","description":"API name of the custom entity whose records to work with.","required":true,"schema":{"type":"string"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createCustomEntityInput"}}}},"responses":{"201":{"description":"The created CustomEntity record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CustomEntity"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/{custom_entity_api_name}/batch-delete":{"post":{"description":"Deletes the CustomEntity records with the given ids.","operationId":"{custom_entity_api_name}.batch_delete","summary":"CustomEntities.batch_delete","tags":["Custom Entity"],"parameters":[{"name":"custom_entity_api_name","in":"path","description":"API name of the custom entity whose records to work with.","required":true,"schema":{"type":"string"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/{custom_entity_api_name}/batch-modify":{"post":{"description":"Creates or updates CustomEntity records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"{custom_entity_api_name}.batch_create_or_update","summary":"CustomEntities.batch_create_or_update","tags":["Custom Entity"],"parameters":[{"name":"custom_entity_api_name","in":"path","description":"API name of the custom entity whose records to work with.","required":true,"schema":{"type":"string"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchCustomEntityInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/{custom_entity_api_name}/batch-restore":{"post":{"description":"Restores the deleted CustomEntity records with the given ids.","operationId":"{custom_entity_api_name}.batch_restore","summary":"CustomEntities.batch_restore","tags":["Custom Entity"],"parameters":[{"name":"custom_entity_api_name","in":"path","description":"API name of the custom entity whose records to work with.","required":true,"schema":{"type":"string"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/{custom_entity_type_api_name}/{id}":{"get":{"description":"Returns the CustomEntityType record with the given id.","operationId":"{custom_entity_type_api_name}.get","summary":"CustomEntityTypes.get","tags":["Custom Entity"],"parameters":[{"name":"custom_entity_type_api_name","in":"path","description":"API name of the custom entity whose record types to work with.","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","description":"Id of the CustomEntityType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The CustomEntityType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CustomEntityType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the CustomEntityType record with the given id.","operationId":"{custom_entity_type_api_name}.delete","summary":"CustomEntityTypes.delete","tags":["Custom Entity"],"parameters":[{"name":"custom_entity_type_api_name","in":"path","description":"API name of the custom entity whose record types to work with.","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","description":"Id of the CustomEntityType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the CustomEntityType record with the given id; fields left out keep their values.","parameters":[{"name":"custom_entity_type_api_name","in":"path","description":"API name of the custom entity whose record types to work with.","required":true,"schema":{"type":"string"}},{"name":"id","in":"path","description":"Id of the CustomEntityType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"{custom_entity_type_api_name}.update","summary":"CustomEntityTypes.update","tags":["Custom Entity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCustomEntityTypeInput"}}}},"responses":{"200":{"description":"The changed CustomEntityType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CustomEntityType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/{custom_entity_type_api_name}":{"get":{"description":"Returns a page of CustomEntityType records, optionally filtered, sorted and limited to selected fields.","operationId":"{custom_entity_type_api_name}.list","summary":"CustomEntityTypes.list","tags":["Custom Entity"],"parameters":[{"name":"custom_entity_type_api_name","in":"path","description":"API name of the custom entity whose record types to work with.","required":true,"schema":{"type":"string"}},{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of CustomEntityType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/CustomEntityType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a CustomEntityType record.","operationId":"{custom_entity_type_api_name}.create","summary":"CustomEntityTypes.create","tags":["Custom Entity"],"parameters":[{"name":"custom_entity_type_api_name","in":"path","description":"API name of the custom entity whose record types to work with.","required":true,"schema":{"type":"string"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createCustomEntityTypeInput"}}}},"responses":{"201":{"description":"The created CustomEntityType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/CustomEntityType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/{custom_entity_type_api_name}/batch-delete":{"post":{"description":"Deletes the CustomEntityType records with the given ids.","operationId":"{custom_entity_type_api_name}.batch_delete","summary":"CustomEntityTypes.batch_delete","tags":["Custom Entity"],"parameters":[{"name":"custom_entity_type_api_name","in":"path","description":"API name of the custom entity whose record types to work with.","required":true,"schema":{"type":"string"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/{custom_entity_type_api_name}/batch-modify":{"post":{"description":"Creates or updates CustomEntityType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"{custom_entity_type_api_name}.batch_create_or_update","summary":"CustomEntityTypes.batch_create_or_update","tags":["Custom Entity"],"parameters":[{"name":"custom_entity_type_api_name","in":"path","description":"API name of the custom entity whose record types to work with.","required":true,"schema":{"type":"string"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchCustomEntityTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/{custom_entity_type_api_name}/batch-restore":{"post":{"description":"Restores the deleted CustomEntityType records with the given ids.","operationId":"{custom_entity_type_api_name}.batch_restore","summary":"CustomEntityTypes.batch_restore","tags":["Custom Entity"],"parameters":[{"name":"custom_entity_type_api_name","in":"path","description":"API name of the custom entity whose record types to work with.","required":true,"schema":{"type":"string"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Data/{id}":{"get":{"description":"Returns the Data record with the given id.","operationId":"Data.get","summary":"Data.get","tags":["Field"],"parameters":[{"name":"id","in":"path","description":"Id of the Data record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Data record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Data"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Data record with the given id.","operationId":"Data.delete","summary":"Data.delete","tags":["Field"],"parameters":[{"name":"id","in":"path","description":"Id of the Data record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Data record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Data record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Data.update","summary":"Data.update","tags":["Field"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateDataInput"}}}},"responses":{"200":{"description":"The changed Data record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Data"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Data":{"get":{"description":"Returns a page of Data records, optionally filtered, sorted and limited to selected fields.","operationId":"Data.list","summary":"Data.list","tags":["Field"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Data records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Data"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Data record.","operationId":"Data.create","summary":"Data.create","tags":["Field"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createDataInput"}}}},"responses":{"201":{"description":"The created Data record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Data"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Data/batch-delete":{"post":{"description":"Deletes the Data records with the given ids.","operationId":"Data.batch_delete","summary":"Data.batch_delete","tags":["Field"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Data/batch-modify":{"post":{"description":"Creates or updates Data records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Data.batch_create_or_update","summary":"Data.batch_create_or_update","tags":["Field"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchDataInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Data/batch-restore":{"post":{"description":"Restores the deleted Data records with the given ids.","operationId":"Data.batch_restore","summary":"Data.batch_restore","tags":["Field"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Emails/{id}":{"get":{"description":"Returns the Email record with the given id.","operationId":"Emails.get","summary":"Emails.get","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the Email record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Email record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Email"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Email record with the given id.","operationId":"Emails.delete","summary":"Emails.delete","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the Email record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Email record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Email record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Emails.update","summary":"Emails.update","tags":["Email"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailInput"}}}},"responses":{"200":{"description":"The changed Email record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Email"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Emails":{"get":{"description":"Returns a page of Email records, optionally filtered, sorted and limited to selected fields.","operationId":"Emails.list","summary":"Emails.list","tags":["Email"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Email records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Email"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Email record.","operationId":"Emails.create","summary":"Emails.create","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailInput"}}}},"responses":{"201":{"description":"The created Email record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Email"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Emails/batch-delete":{"post":{"description":"Deletes the Email records with the given ids.","operationId":"Emails.batch_delete","summary":"Emails.batch_delete","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Emails/batch-modify":{"post":{"description":"Creates or updates Email records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Emails.batch_create_or_update","summary":"Emails.batch_create_or_update","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Emails/batch-restore":{"post":{"description":"Restores the deleted Email records with the given ids.","operationId":"Emails.batch_restore","summary":"Emails.batch_restore","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailContentSharingClientRelations/{id}":{"get":{"description":"Returns the EmailContentSharingClientRelation record with the given id.","operationId":"EmailContentSharingClientRelations.get","summary":"EmailContentSharingClientRelations.get","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailContentSharingClientRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailContentSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailContentSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EmailContentSharingClientRelation record with the given id.","operationId":"EmailContentSharingClientRelations.delete","summary":"EmailContentSharingClientRelations.delete","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailContentSharingClientRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EmailContentSharingClientRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EmailContentSharingClientRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EmailContentSharingClientRelations.update","summary":"EmailContentSharingClientRelations.update","tags":["Email"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailContentSharingClientRelationInput"}}}},"responses":{"200":{"description":"The changed EmailContentSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailContentSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailContentSharingClientRelations":{"get":{"description":"Returns a page of EmailContentSharingClientRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailContentSharingClientRelations.list","summary":"EmailContentSharingClientRelations.list","tags":["Email"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailContentSharingClientRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailContentSharingClientRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EmailContentSharingClientRelation record.","operationId":"EmailContentSharingClientRelations.create","summary":"EmailContentSharingClientRelations.create","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailContentSharingClientRelationInput"}}}},"responses":{"201":{"description":"The created EmailContentSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailContentSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailContentSharingClientRelations/batch-delete":{"post":{"description":"Deletes the EmailContentSharingClientRelation records with the given ids.","operationId":"EmailContentSharingClientRelations.batch_delete","summary":"EmailContentSharingClientRelations.batch_delete","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailContentSharingClientRelations/batch-modify":{"post":{"description":"Creates or updates EmailContentSharingClientRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EmailContentSharingClientRelations.batch_create_or_update","summary":"EmailContentSharingClientRelations.batch_create_or_update","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailContentSharingClientRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailContentSharingClientRelations/batch-restore":{"post":{"description":"Restores the deleted EmailContentSharingClientRelation records with the given ids.","operationId":"EmailContentSharingClientRelations.batch_restore","summary":"EmailContentSharingClientRelations.batch_restore","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailContentSharingSalesUnitRelations/{id}":{"get":{"description":"Returns the EmailContentSharingSalesUnitRelation record with the given id.","operationId":"EmailContentSharingSalesUnitRelations.get","summary":"EmailContentSharingSalesUnitRelations.get","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailContentSharingSalesUnitRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailContentSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailContentSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EmailContentSharingSalesUnitRelation record with the given id.","operationId":"EmailContentSharingSalesUnitRelations.delete","summary":"EmailContentSharingSalesUnitRelations.delete","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailContentSharingSalesUnitRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EmailContentSharingSalesUnitRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EmailContentSharingSalesUnitRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EmailContentSharingSalesUnitRelations.update","summary":"EmailContentSharingSalesUnitRelations.update","tags":["Email"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailContentSharingSalesUnitRelationInput"}}}},"responses":{"200":{"description":"The changed EmailContentSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailContentSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailContentSharingSalesUnitRelations":{"get":{"description":"Returns a page of EmailContentSharingSalesUnitRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailContentSharingSalesUnitRelations.list","summary":"EmailContentSharingSalesUnitRelations.list","tags":["Email"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailContentSharingSalesUnitRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailContentSharingSalesUnitRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EmailContentSharingSalesUnitRelation record.","operationId":"EmailContentSharingSalesUnitRelations.create","summary":"EmailContentSharingSalesUnitRelations.create","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailContentSharingSalesUnitRelationInput"}}}},"responses":{"201":{"description":"The created EmailContentSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailContentSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailContentSharingSalesUnitRelations/batch-delete":{"post":{"description":"Deletes the EmailContentSharingSalesUnitRelation records with the given ids.","operationId":"EmailContentSharingSalesUnitRelations.batch_delete","summary":"EmailContentSharingSalesUnitRelations.batch_delete","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailContentSharingSalesUnitRelations/batch-modify":{"post":{"description":"Creates or updates EmailContentSharingSalesUnitRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EmailContentSharingSalesUnitRelations.batch_create_or_update","summary":"EmailContentSharingSalesUnitRelations.batch_create_or_update","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailContentSharingSalesUnitRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailContentSharingSalesUnitRelations/batch-restore":{"post":{"description":"Restores the deleted EmailContentSharingSalesUnitRelation records with the given ids.","operationId":"EmailContentSharingSalesUnitRelations.batch_restore","summary":"EmailContentSharingSalesUnitRelations.batch_restore","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailEvents/{id}":{"get":{"description":"Returns the EmailEvent record with the given id.","operationId":"EmailEvents.get","summary":"EmailEvents.get","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailEvent record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailEvent record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailEvent"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EmailEvent record with the given id.","operationId":"EmailEvents.delete","summary":"EmailEvents.delete","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailEvent record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EmailEvent record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EmailEvent record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EmailEvents.update","summary":"EmailEvents.update","tags":["Email"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailEventInput"}}}},"responses":{"200":{"description":"The changed EmailEvent record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailEvent"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailEvents":{"get":{"description":"Returns a page of EmailEvent records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailEvents.list","summary":"EmailEvents.list","tags":["Email"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailEvent records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailEvent"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EmailEvent record.","operationId":"EmailEvents.create","summary":"EmailEvents.create","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailEventInput"}}}},"responses":{"201":{"description":"The created EmailEvent record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailEvent"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailEvents/batch-delete":{"post":{"description":"Deletes the EmailEvent records with the given ids.","operationId":"EmailEvents.batch_delete","summary":"EmailEvents.batch_delete","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailEvents/batch-modify":{"post":{"description":"Creates or updates EmailEvent records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EmailEvents.batch_create_or_update","summary":"EmailEvents.batch_create_or_update","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailEventInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailEvents/batch-restore":{"post":{"description":"Restores the deleted EmailEvent records with the given ids.","operationId":"EmailEvents.batch_restore","summary":"EmailEvents.batch_restore","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailLabels/{id}":{"get":{"description":"Returns the EmailLabel record with the given id.","operationId":"EmailLabels.get","summary":"EmailLabels.get","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailLabel record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailLabel record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailLabel"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EmailLabel record with the given id.","operationId":"EmailLabels.delete","summary":"EmailLabels.delete","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailLabel record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EmailLabel record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EmailLabel record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EmailLabels.update","summary":"EmailLabels.update","tags":["Email"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailLabelInput"}}}},"responses":{"200":{"description":"The changed EmailLabel record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailLabel"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailLabels":{"get":{"description":"Returns a page of EmailLabel records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailLabels.list","summary":"EmailLabels.list","tags":["Email"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailLabel records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailLabel"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EmailLabel record.","operationId":"EmailLabels.create","summary":"EmailLabels.create","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailLabelInput"}}}},"responses":{"201":{"description":"The created EmailLabel record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailLabel"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailLabels/batch-delete":{"post":{"description":"Deletes the EmailLabel records with the given ids.","operationId":"EmailLabels.batch_delete","summary":"EmailLabels.batch_delete","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailLabels/batch-modify":{"post":{"description":"Creates or updates EmailLabel records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EmailLabels.batch_create_or_update","summary":"EmailLabels.batch_create_or_update","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailLabelInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailLabels/batch-restore":{"post":{"description":"Restores the deleted EmailLabel records with the given ids.","operationId":"EmailLabels.batch_restore","summary":"EmailLabels.batch_restore","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailLabelRelations/{id}":{"get":{"description":"Returns the EmailLabelRelation record with the given id.","operationId":"EmailLabelRelations.get","summary":"EmailLabelRelations.get","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailLabelRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailLabelRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailLabelRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EmailLabelRelation record with the given id.","operationId":"EmailLabelRelations.delete","summary":"EmailLabelRelations.delete","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailLabelRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EmailLabelRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EmailLabelRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EmailLabelRelations.update","summary":"EmailLabelRelations.update","tags":["Email"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailLabelRelationInput"}}}},"responses":{"200":{"description":"The changed EmailLabelRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailLabelRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailLabelRelations":{"get":{"description":"Returns a page of EmailLabelRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailLabelRelations.list","summary":"EmailLabelRelations.list","tags":["Email"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailLabelRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailLabelRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EmailLabelRelation record.","operationId":"EmailLabelRelations.create","summary":"EmailLabelRelations.create","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailLabelRelationInput"}}}},"responses":{"201":{"description":"The created EmailLabelRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailLabelRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailLabelRelations/batch-delete":{"post":{"description":"Deletes the EmailLabelRelation records with the given ids.","operationId":"EmailLabelRelations.batch_delete","summary":"EmailLabelRelations.batch_delete","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailLabelRelations/batch-modify":{"post":{"description":"Creates or updates EmailLabelRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EmailLabelRelations.batch_create_or_update","summary":"EmailLabelRelations.batch_create_or_update","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailLabelRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailLabelRelations/batch-restore":{"post":{"description":"Restores the deleted EmailLabelRelation records with the given ids.","operationId":"EmailLabelRelations.batch_restore","summary":"EmailLabelRelations.batch_restore","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailMailboxRelations/{id}":{"get":{"description":"Returns the EmailMailboxRelation record with the given id.","operationId":"EmailMailboxRelations.get","summary":"EmailMailboxRelations.get","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailMailboxRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailMailboxRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailMailboxRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailMailboxRelations":{"get":{"description":"Returns a page of EmailMailboxRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailMailboxRelations.list","summary":"EmailMailboxRelations.list","tags":["Email"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailMailboxRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailMailboxRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequences/{id}":{"get":{"description":"Returns the EmailSequence record with the given id.","operationId":"EmailSequences.get","summary":"EmailSequences.get","tags":["Email Sequence"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailSequence record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailSequence record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailSequence"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EmailSequence record with the given id.","operationId":"EmailSequences.delete","summary":"EmailSequences.delete","tags":["Email Sequence"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailSequence record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EmailSequence record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EmailSequence record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EmailSequences.update","summary":"EmailSequences.update","tags":["Email Sequence"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailSequenceInput"}}}},"responses":{"200":{"description":"The changed EmailSequence record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailSequence"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequences":{"get":{"description":"Returns a page of EmailSequence records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailSequences.list","summary":"EmailSequences.list","tags":["Email Sequence"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailSequence records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailSequence"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EmailSequence record.","operationId":"EmailSequences.create","summary":"EmailSequences.create","tags":["Email Sequence"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailSequenceInput"}}}},"responses":{"201":{"description":"The created EmailSequence record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailSequence"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequences/batch-delete":{"post":{"description":"Deletes the EmailSequence records with the given ids.","operationId":"EmailSequences.batch_delete","summary":"EmailSequences.batch_delete","tags":["Email Sequence"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequences/batch-modify":{"post":{"description":"Creates or updates EmailSequence records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EmailSequences.batch_create_or_update","summary":"EmailSequences.batch_create_or_update","tags":["Email Sequence"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailSequenceInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequences/batch-restore":{"post":{"description":"Restores the deleted EmailSequence records with the given ids.","operationId":"EmailSequences.batch_restore","summary":"EmailSequences.batch_restore","tags":["Email Sequence"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceActivityLogs/{id}":{"get":{"description":"Returns the EmailSequenceActivityLog record with the given id.","operationId":"EmailSequenceActivityLogs.get","summary":"EmailSequenceActivityLogs.get","tags":["Email Sequence"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailSequenceActivityLog record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailSequenceActivityLog record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailSequenceActivityLog"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EmailSequenceActivityLog record with the given id.","operationId":"EmailSequenceActivityLogs.delete","summary":"EmailSequenceActivityLogs.delete","tags":["Email Sequence"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailSequenceActivityLog record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EmailSequenceActivityLog record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EmailSequenceActivityLog record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EmailSequenceActivityLogs.update","summary":"EmailSequenceActivityLogs.update","tags":["Email Sequence"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailSequenceActivityLogInput"}}}},"responses":{"200":{"description":"The changed EmailSequenceActivityLog record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailSequenceActivityLog"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceActivityLogs":{"get":{"description":"Returns a page of EmailSequenceActivityLog records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailSequenceActivityLogs.list","summary":"EmailSequenceActivityLogs.list","tags":["Email Sequence"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailSequenceActivityLog records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailSequenceActivityLog"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EmailSequenceActivityLog record.","operationId":"EmailSequenceActivityLogs.create","summary":"EmailSequenceActivityLogs.create","tags":["Email Sequence"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailSequenceActivityLogInput"}}}},"responses":{"201":{"description":"The created EmailSequenceActivityLog record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailSequenceActivityLog"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceActivityLogs/batch-delete":{"post":{"description":"Deletes the EmailSequenceActivityLog records with the given ids.","operationId":"EmailSequenceActivityLogs.batch_delete","summary":"EmailSequenceActivityLogs.batch_delete","tags":["Email Sequence"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceActivityLogs/batch-modify":{"post":{"description":"Creates or updates EmailSequenceActivityLog records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EmailSequenceActivityLogs.batch_create_or_update","summary":"EmailSequenceActivityLogs.batch_create_or_update","tags":["Email Sequence"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailSequenceActivityLogInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceActivityLogs/batch-restore":{"post":{"description":"Restores the deleted EmailSequenceActivityLog records with the given ids.","operationId":"EmailSequenceActivityLogs.batch_restore","summary":"EmailSequenceActivityLogs.batch_restore","tags":["Email Sequence"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceActivityLogLines/{id}":{"get":{"description":"Returns the EmailSequenceActivityLogLine record with the given id.","operationId":"EmailSequenceActivityLogLines.get","summary":"EmailSequenceActivityLogLines.get","tags":["Email Sequence"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailSequenceActivityLogLine record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailSequenceActivityLogLine record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailSequenceActivityLogLine"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EmailSequenceActivityLogLine record with the given id.","operationId":"EmailSequenceActivityLogLines.delete","summary":"EmailSequenceActivityLogLines.delete","tags":["Email Sequence"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailSequenceActivityLogLine record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EmailSequenceActivityLogLine record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EmailSequenceActivityLogLine record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EmailSequenceActivityLogLines.update","summary":"EmailSequenceActivityLogLines.update","tags":["Email Sequence"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailSequenceActivityLogLineInput"}}}},"responses":{"200":{"description":"The changed EmailSequenceActivityLogLine record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailSequenceActivityLogLine"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceActivityLogLines":{"get":{"description":"Returns a page of EmailSequenceActivityLogLine records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailSequenceActivityLogLines.list","summary":"EmailSequenceActivityLogLines.list","tags":["Email Sequence"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailSequenceActivityLogLine records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailSequenceActivityLogLine"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EmailSequenceActivityLogLine record.","operationId":"EmailSequenceActivityLogLines.create","summary":"EmailSequenceActivityLogLines.create","tags":["Email Sequence"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailSequenceActivityLogLineInput"}}}},"responses":{"201":{"description":"The created EmailSequenceActivityLogLine record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailSequenceActivityLogLine"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceActivityLogLines/batch-delete":{"post":{"description":"Deletes the EmailSequenceActivityLogLine records with the given ids.","operationId":"EmailSequenceActivityLogLines.batch_delete","summary":"EmailSequenceActivityLogLines.batch_delete","tags":["Email Sequence"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceActivityLogLines/batch-modify":{"post":{"description":"Creates or updates EmailSequenceActivityLogLine records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EmailSequenceActivityLogLines.batch_create_or_update","summary":"EmailSequenceActivityLogLines.batch_create_or_update","tags":["Email Sequence"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailSequenceActivityLogLineInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceActivityLogLines/batch-restore":{"post":{"description":"Restores the deleted EmailSequenceActivityLogLine records with the given ids.","operationId":"EmailSequenceActivityLogLines.batch_restore","summary":"EmailSequenceActivityLogLines.batch_restore","tags":["Email Sequence"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceEnrolleds/{id}":{"get":{"description":"Returns the EmailSequenceEnrolled record with the given id.","operationId":"EmailSequenceEnrolleds.get","summary":"EmailSequenceEnrolleds.get","tags":["Email Sequence"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailSequenceEnrolled record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailSequenceEnrolled record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailSequenceEnrolled"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EmailSequenceEnrolled record with the given id.","operationId":"EmailSequenceEnrolleds.delete","summary":"EmailSequenceEnrolleds.delete","tags":["Email Sequence"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailSequenceEnrolled record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EmailSequenceEnrolled record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EmailSequenceEnrolled record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EmailSequenceEnrolleds.update","summary":"EmailSequenceEnrolleds.update","tags":["Email Sequence"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailSequenceEnrolledInput"}}}},"responses":{"200":{"description":"The changed EmailSequenceEnrolled record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailSequenceEnrolled"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceEnrolleds":{"get":{"description":"Returns a page of EmailSequenceEnrolled records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailSequenceEnrolleds.list","summary":"EmailSequenceEnrolleds.list","tags":["Email Sequence"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailSequenceEnrolled records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailSequenceEnrolled"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EmailSequenceEnrolled record.","operationId":"EmailSequenceEnrolleds.create","summary":"EmailSequenceEnrolleds.create","tags":["Email Sequence"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailSequenceEnrolledInput"}}}},"responses":{"201":{"description":"The created EmailSequenceEnrolled record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailSequenceEnrolled"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceEnrolleds/batch-delete":{"post":{"description":"Deletes the EmailSequenceEnrolled records with the given ids.","operationId":"EmailSequenceEnrolleds.batch_delete","summary":"EmailSequenceEnrolleds.batch_delete","tags":["Email Sequence"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceEnrolleds/batch-modify":{"post":{"description":"Creates or updates EmailSequenceEnrolled records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EmailSequenceEnrolleds.batch_create_or_update","summary":"EmailSequenceEnrolleds.batch_create_or_update","tags":["Email Sequence"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailSequenceEnrolledInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailSequenceEnrolleds/batch-restore":{"post":{"description":"Restores the deleted EmailSequenceEnrolled records with the given ids.","operationId":"EmailSequenceEnrolleds.batch_restore","summary":"EmailSequenceEnrolleds.batch_restore","tags":["Email Sequence"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplates/{id}":{"get":{"description":"Returns the EmailTemplate record with the given id.","operationId":"EmailTemplates.get","summary":"EmailTemplates.get","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailTemplate record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailTemplate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailTemplate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EmailTemplate record with the given id.","operationId":"EmailTemplates.delete","summary":"EmailTemplates.delete","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailTemplate record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EmailTemplate record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EmailTemplate record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EmailTemplates.update","summary":"EmailTemplates.update","tags":["Email"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailTemplateInput"}}}},"responses":{"200":{"description":"The changed EmailTemplate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailTemplate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplates":{"get":{"description":"Returns a page of EmailTemplate records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailTemplates.list","summary":"EmailTemplates.list","tags":["Email"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailTemplate records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailTemplate"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EmailTemplate record.","operationId":"EmailTemplates.create","summary":"EmailTemplates.create","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailTemplateInput"}}}},"responses":{"201":{"description":"The created EmailTemplate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailTemplate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplates/batch-delete":{"post":{"description":"Deletes the EmailTemplate records with the given ids.","operationId":"EmailTemplates.batch_delete","summary":"EmailTemplates.batch_delete","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplates/batch-modify":{"post":{"description":"Creates or updates EmailTemplate records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EmailTemplates.batch_create_or_update","summary":"EmailTemplates.batch_create_or_update","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailTemplateInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplates/batch-restore":{"post":{"description":"Restores the deleted EmailTemplate records with the given ids.","operationId":"EmailTemplates.batch_restore","summary":"EmailTemplates.batch_restore","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateFolders/{id}":{"get":{"description":"Returns the EmailTemplateFolder record with the given id.","operationId":"EmailTemplateFolders.get","summary":"EmailTemplateFolders.get","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailTemplateFolder record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailTemplateFolder record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailTemplateFolder"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EmailTemplateFolder record with the given id.","operationId":"EmailTemplateFolders.delete","summary":"EmailTemplateFolders.delete","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailTemplateFolder record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EmailTemplateFolder record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EmailTemplateFolder record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EmailTemplateFolders.update","summary":"EmailTemplateFolders.update","tags":["Email"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailTemplateFolderInput"}}}},"responses":{"200":{"description":"The changed EmailTemplateFolder record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailTemplateFolder"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateFolders":{"get":{"description":"Returns a page of EmailTemplateFolder records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailTemplateFolders.list","summary":"EmailTemplateFolders.list","tags":["Email"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailTemplateFolder records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailTemplateFolder"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EmailTemplateFolder record.","operationId":"EmailTemplateFolders.create","summary":"EmailTemplateFolders.create","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailTemplateFolderInput"}}}},"responses":{"201":{"description":"The created EmailTemplateFolder record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailTemplateFolder"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateFolders/batch-delete":{"post":{"description":"Deletes the EmailTemplateFolder records with the given ids.","operationId":"EmailTemplateFolders.batch_delete","summary":"EmailTemplateFolders.batch_delete","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateFolders/batch-modify":{"post":{"description":"Creates or updates EmailTemplateFolder records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EmailTemplateFolders.batch_create_or_update","summary":"EmailTemplateFolders.batch_create_or_update","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailTemplateFolderInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateFolders/batch-restore":{"post":{"description":"Restores the deleted EmailTemplateFolder records with the given ids.","operationId":"EmailTemplateFolders.batch_restore","summary":"EmailTemplateFolders.batch_restore","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateSharingClientRelations/{id}":{"get":{"description":"Returns the EmailTemplateSharingClientRelation record with the given id.","operationId":"EmailTemplateSharingClientRelations.get","summary":"EmailTemplateSharingClientRelations.get","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailTemplateSharingClientRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailTemplateSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailTemplateSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EmailTemplateSharingClientRelation record with the given id.","operationId":"EmailTemplateSharingClientRelations.delete","summary":"EmailTemplateSharingClientRelations.delete","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailTemplateSharingClientRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EmailTemplateSharingClientRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EmailTemplateSharingClientRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EmailTemplateSharingClientRelations.update","summary":"EmailTemplateSharingClientRelations.update","tags":["Email"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailTemplateSharingClientRelationInput"}}}},"responses":{"200":{"description":"The changed EmailTemplateSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailTemplateSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateSharingClientRelations":{"get":{"description":"Returns a page of EmailTemplateSharingClientRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailTemplateSharingClientRelations.list","summary":"EmailTemplateSharingClientRelations.list","tags":["Email"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailTemplateSharingClientRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailTemplateSharingClientRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EmailTemplateSharingClientRelation record.","operationId":"EmailTemplateSharingClientRelations.create","summary":"EmailTemplateSharingClientRelations.create","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailTemplateSharingClientRelationInput"}}}},"responses":{"201":{"description":"The created EmailTemplateSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailTemplateSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateSharingClientRelations/batch-delete":{"post":{"description":"Deletes the EmailTemplateSharingClientRelation records with the given ids.","operationId":"EmailTemplateSharingClientRelations.batch_delete","summary":"EmailTemplateSharingClientRelations.batch_delete","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateSharingClientRelations/batch-modify":{"post":{"description":"Creates or updates EmailTemplateSharingClientRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EmailTemplateSharingClientRelations.batch_create_or_update","summary":"EmailTemplateSharingClientRelations.batch_create_or_update","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailTemplateSharingClientRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateSharingClientRelations/batch-restore":{"post":{"description":"Restores the deleted EmailTemplateSharingClientRelation records with the given ids.","operationId":"EmailTemplateSharingClientRelations.batch_restore","summary":"EmailTemplateSharingClientRelations.batch_restore","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateSharingSalesUnitRelations/{id}":{"get":{"description":"Returns the EmailTemplateSharingSalesUnitRelation record with the given id.","operationId":"EmailTemplateSharingSalesUnitRelations.get","summary":"EmailTemplateSharingSalesUnitRelations.get","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailTemplateSharingSalesUnitRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailTemplateSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailTemplateSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EmailTemplateSharingSalesUnitRelation record with the given id.","operationId":"EmailTemplateSharingSalesUnitRelations.delete","summary":"EmailTemplateSharingSalesUnitRelations.delete","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailTemplateSharingSalesUnitRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EmailTemplateSharingSalesUnitRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EmailTemplateSharingSalesUnitRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EmailTemplateSharingSalesUnitRelations.update","summary":"EmailTemplateSharingSalesUnitRelations.update","tags":["Email"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailTemplateSharingSalesUnitRelationInput"}}}},"responses":{"200":{"description":"The changed EmailTemplateSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailTemplateSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateSharingSalesUnitRelations":{"get":{"description":"Returns a page of EmailTemplateSharingSalesUnitRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailTemplateSharingSalesUnitRelations.list","summary":"EmailTemplateSharingSalesUnitRelations.list","tags":["Email"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailTemplateSharingSalesUnitRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailTemplateSharingSalesUnitRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EmailTemplateSharingSalesUnitRelation record.","operationId":"EmailTemplateSharingSalesUnitRelations.create","summary":"EmailTemplateSharingSalesUnitRelations.create","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailTemplateSharingSalesUnitRelationInput"}}}},"responses":{"201":{"description":"The created EmailTemplateSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailTemplateSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateSharingSalesUnitRelations/batch-delete":{"post":{"description":"Deletes the EmailTemplateSharingSalesUnitRelation records with the given ids.","operationId":"EmailTemplateSharingSalesUnitRelations.batch_delete","summary":"EmailTemplateSharingSalesUnitRelations.batch_delete","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateSharingSalesUnitRelations/batch-modify":{"post":{"description":"Creates or updates EmailTemplateSharingSalesUnitRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EmailTemplateSharingSalesUnitRelations.batch_create_or_update","summary":"EmailTemplateSharingSalesUnitRelations.batch_create_or_update","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailTemplateSharingSalesUnitRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailTemplateSharingSalesUnitRelations/batch-restore":{"post":{"description":"Restores the deleted EmailTemplateSharingSalesUnitRelation records with the given ids.","operationId":"EmailTemplateSharingSalesUnitRelations.batch_restore","summary":"EmailTemplateSharingSalesUnitRelations.batch_restore","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailThreadMailboxClientReadStates/{id}":{"get":{"description":"Returns the EmailThreadMailboxClientReadState record with the given id.","operationId":"EmailThreadMailboxClientReadStates.get","summary":"EmailThreadMailboxClientReadStates.get","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailThreadMailboxClientReadState record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EmailThreadMailboxClientReadState record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailThreadMailboxClientReadState"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EmailThreadMailboxClientReadState record with the given id.","operationId":"EmailThreadMailboxClientReadStates.delete","summary":"EmailThreadMailboxClientReadStates.delete","tags":["Email"],"parameters":[{"name":"id","in":"path","description":"Id of the EmailThreadMailboxClientReadState record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EmailThreadMailboxClientReadState record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EmailThreadMailboxClientReadState record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EmailThreadMailboxClientReadStates.update","summary":"EmailThreadMailboxClientReadStates.update","tags":["Email"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEmailThreadMailboxClientReadStateInput"}}}},"responses":{"200":{"description":"The changed EmailThreadMailboxClientReadState record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailThreadMailboxClientReadState"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailThreadMailboxClientReadStates":{"get":{"description":"Returns a page of EmailThreadMailboxClientReadState records, optionally filtered, sorted and limited to selected fields.","operationId":"EmailThreadMailboxClientReadStates.list","summary":"EmailThreadMailboxClientReadStates.list","tags":["Email"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EmailThreadMailboxClientReadState records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EmailThreadMailboxClientReadState"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EmailThreadMailboxClientReadState record.","operationId":"EmailThreadMailboxClientReadStates.create","summary":"EmailThreadMailboxClientReadStates.create","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEmailThreadMailboxClientReadStateInput"}}}},"responses":{"201":{"description":"The created EmailThreadMailboxClientReadState record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EmailThreadMailboxClientReadState"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailThreadMailboxClientReadStates/batch-delete":{"post":{"description":"Deletes the EmailThreadMailboxClientReadState records with the given ids.","operationId":"EmailThreadMailboxClientReadStates.batch_delete","summary":"EmailThreadMailboxClientReadStates.batch_delete","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailThreadMailboxClientReadStates/batch-modify":{"post":{"description":"Creates or updates EmailThreadMailboxClientReadState records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EmailThreadMailboxClientReadStates.batch_create_or_update","summary":"EmailThreadMailboxClientReadStates.batch_create_or_update","tags":["Email"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEmailThreadMailboxClientReadStateInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EmailThreadMailboxClientReadStates/batch-restore":{"post":{"description":"Restores the deleted EmailThreadMailboxClientReadState records with the given ids.","operationId":"EmailThreadMailboxClientReadStates.batch_restore","summary":"EmailThreadMailboxClientReadStates.batch_restore","tags":["Email"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Entities/{id}":{"get":{"description":"Returns the Entity record with the given id.","operationId":"Entities.get","summary":"Entities.get","tags":["Custom Entity"],"parameters":[{"name":"id","in":"path","description":"Id of the Entity record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Entity record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Entity"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Entities":{"get":{"description":"Returns a page of Entity records, optionally filtered, sorted and limited to selected fields.","operationId":"Entities.list","summary":"Entities.list","tags":["Custom Entity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Entity records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Entity"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityFitnesses/{id}":{"get":{"description":"Returns the EntityFitness record with the given id.","operationId":"EntityFitnesses.get","summary":"EntityFitnesses.get","tags":["Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the EntityFitness record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EntityFitness record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntityFitness"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EntityFitness record with the given id.","operationId":"EntityFitnesses.delete","summary":"EntityFitnesses.delete","tags":["Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the EntityFitness record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EntityFitness record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EntityFitness record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EntityFitnesses.update","summary":"EntityFitnesses.update","tags":["Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEntityFitnessInput"}}}},"responses":{"200":{"description":"The changed EntityFitness record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntityFitness"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityFitnesses":{"get":{"description":"Returns a page of EntityFitness records, optionally filtered, sorted and limited to selected fields.","operationId":"EntityFitnesses.list","summary":"EntityFitnesses.list","tags":["Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EntityFitness records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EntityFitness"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EntityFitness record.","operationId":"EntityFitnesses.create","summary":"EntityFitnesses.create","tags":["Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEntityFitnessInput"}}}},"responses":{"201":{"description":"The created EntityFitness record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntityFitness"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityFitnesses/batch-delete":{"post":{"description":"Deletes the EntityFitness records with the given ids.","operationId":"EntityFitnesses.batch_delete","summary":"EntityFitnesses.batch_delete","tags":["Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityFitnesses/batch-modify":{"post":{"description":"Creates or updates EntityFitness records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EntityFitnesses.batch_create_or_update","summary":"EntityFitnesses.batch_create_or_update","tags":["Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEntityFitnessInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityFitnesses/batch-restore":{"post":{"description":"Restores the deleted EntityFitness records with the given ids.","operationId":"EntityFitnesses.batch_restore","summary":"EntityFitnesses.batch_restore","tags":["Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityFitnessIndicators/{id}":{"get":{"description":"Returns the EntityFitnessIndicator record with the given id.","operationId":"EntityFitnessIndicators.get","summary":"EntityFitnessIndicators.get","tags":["Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the EntityFitnessIndicator record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EntityFitnessIndicator record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntityFitnessIndicator"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EntityFitnessIndicator record with the given id.","operationId":"EntityFitnessIndicators.delete","summary":"EntityFitnessIndicators.delete","tags":["Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the EntityFitnessIndicator record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EntityFitnessIndicator record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EntityFitnessIndicator record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EntityFitnessIndicators.update","summary":"EntityFitnessIndicators.update","tags":["Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEntityFitnessIndicatorInput"}}}},"responses":{"200":{"description":"The changed EntityFitnessIndicator record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntityFitnessIndicator"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityFitnessIndicators":{"get":{"description":"Returns a page of EntityFitnessIndicator records, optionally filtered, sorted and limited to selected fields.","operationId":"EntityFitnessIndicators.list","summary":"EntityFitnessIndicators.list","tags":["Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EntityFitnessIndicator records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EntityFitnessIndicator"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EntityFitnessIndicator record.","operationId":"EntityFitnessIndicators.create","summary":"EntityFitnessIndicators.create","tags":["Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEntityFitnessIndicatorInput"}}}},"responses":{"201":{"description":"The created EntityFitnessIndicator record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntityFitnessIndicator"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityFitnessIndicators/batch-delete":{"post":{"description":"Deletes the EntityFitnessIndicator records with the given ids.","operationId":"EntityFitnessIndicators.batch_delete","summary":"EntityFitnessIndicators.batch_delete","tags":["Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityFitnessIndicators/batch-modify":{"post":{"description":"Creates or updates EntityFitnessIndicator records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EntityFitnessIndicators.batch_create_or_update","summary":"EntityFitnessIndicators.batch_create_or_update","tags":["Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEntityFitnessIndicatorInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityFitnessIndicators/batch-restore":{"post":{"description":"Restores the deleted EntityFitnessIndicator records with the given ids.","operationId":"EntityFitnessIndicators.batch_restore","summary":"EntityFitnessIndicators.batch_restore","tags":["Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityHealths/{id}":{"get":{"description":"Returns the EntityHealth record with the given id.","operationId":"EntityHealths.get","summary":"EntityHealths.get","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the EntityHealth record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EntityHealth record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntityHealth"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EntityHealth record with the given id.","operationId":"EntityHealths.delete","summary":"EntityHealths.delete","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the EntityHealth record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EntityHealth record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EntityHealth record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EntityHealths.update","summary":"EntityHealths.update","tags":["Account"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEntityHealthInput"}}}},"responses":{"200":{"description":"The changed EntityHealth record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntityHealth"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityHealths":{"get":{"description":"Returns a page of EntityHealth records, optionally filtered, sorted and limited to selected fields.","operationId":"EntityHealths.list","summary":"EntityHealths.list","tags":["Account"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EntityHealth records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EntityHealth"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EntityHealth record.","operationId":"EntityHealths.create","summary":"EntityHealths.create","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEntityHealthInput"}}}},"responses":{"201":{"description":"The created EntityHealth record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntityHealth"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityHealths/batch-delete":{"post":{"description":"Deletes the EntityHealth records with the given ids.","operationId":"EntityHealths.batch_delete","summary":"EntityHealths.batch_delete","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityHealths/batch-modify":{"post":{"description":"Creates or updates EntityHealth records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EntityHealths.batch_create_or_update","summary":"EntityHealths.batch_create_or_update","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEntityHealthInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityHealths/batch-restore":{"post":{"description":"Restores the deleted EntityHealth records with the given ids.","operationId":"EntityHealths.batch_restore","summary":"EntityHealths.batch_restore","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityScorings/{id}":{"get":{"description":"Returns the EntityScoring record with the given id.","operationId":"EntityScorings.get","summary":"EntityScorings.get","tags":["Lead"],"parameters":[{"name":"id","in":"path","description":"Id of the EntityScoring record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EntityScoring record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntityScoring"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EntityScoring record with the given id.","operationId":"EntityScorings.delete","summary":"EntityScorings.delete","tags":["Lead"],"parameters":[{"name":"id","in":"path","description":"Id of the EntityScoring record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EntityScoring record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EntityScoring record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EntityScorings.update","summary":"EntityScorings.update","tags":["Lead"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEntityScoringInput"}}}},"responses":{"200":{"description":"The changed EntityScoring record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntityScoring"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityScorings":{"get":{"description":"Returns a page of EntityScoring records, optionally filtered, sorted and limited to selected fields.","operationId":"EntityScorings.list","summary":"EntityScorings.list","tags":["Lead"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EntityScoring records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EntityScoring"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EntityScoring record.","operationId":"EntityScorings.create","summary":"EntityScorings.create","tags":["Lead"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEntityScoringInput"}}}},"responses":{"201":{"description":"The created EntityScoring record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntityScoring"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityScorings/batch-delete":{"post":{"description":"Deletes the EntityScoring records with the given ids.","operationId":"EntityScorings.batch_delete","summary":"EntityScorings.batch_delete","tags":["Lead"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityScorings/batch-modify":{"post":{"description":"Creates or updates EntityScoring records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EntityScorings.batch_create_or_update","summary":"EntityScorings.batch_create_or_update","tags":["Lead"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEntityScoringInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntityScorings/batch-restore":{"post":{"description":"Restores the deleted EntityScoring records with the given ids.","operationId":"EntityScorings.batch_restore","summary":"EntityScorings.batch_restore","tags":["Lead"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntitySettingses/{id}":{"get":{"description":"Returns the EntitySettings record with the given id.","operationId":"EntitySettingses.get","summary":"EntitySettingses.get","tags":["Custom Entity"],"parameters":[{"name":"id","in":"path","description":"Id of the EntitySettings record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The EntitySettings record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntitySettings"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the EntitySettings record with the given id.","operationId":"EntitySettingses.delete","summary":"EntitySettingses.delete","tags":["Custom Entity"],"parameters":[{"name":"id","in":"path","description":"Id of the EntitySettings record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the EntitySettings record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the EntitySettings record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"EntitySettingses.update","summary":"EntitySettingses.update","tags":["Custom Entity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateEntitySettingsInput"}}}},"responses":{"200":{"description":"The changed EntitySettings record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntitySettings"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntitySettingses":{"get":{"description":"Returns a page of EntitySettings records, optionally filtered, sorted and limited to selected fields.","operationId":"EntitySettingses.list","summary":"EntitySettingses.list","tags":["Custom Entity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of EntitySettings records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/EntitySettings"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a EntitySettings record.","operationId":"EntitySettingses.create","summary":"EntitySettingses.create","tags":["Custom Entity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createEntitySettingsInput"}}}},"responses":{"201":{"description":"The created EntitySettings record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/EntitySettings"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntitySettingses/batch-delete":{"post":{"description":"Deletes the EntitySettings records with the given ids.","operationId":"EntitySettingses.batch_delete","summary":"EntitySettingses.batch_delete","tags":["Custom Entity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntitySettingses/batch-modify":{"post":{"description":"Creates or updates EntitySettings records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"EntitySettingses.batch_create_or_update","summary":"EntitySettingses.batch_create_or_update","tags":["Custom Entity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchEntitySettingsInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/EntitySettingses/batch-restore":{"post":{"description":"Restores the deleted EntitySettings records with the given ids.","operationId":"EntitySettingses.batch_restore","summary":"EntitySettingses.batch_restore","tags":["Custom Entity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Fields/{id}":{"get":{"description":"Returns the Field record with the given id.","operationId":"Fields.get","summary":"Fields.get","tags":["Field"],"parameters":[{"name":"id","in":"path","description":"Id of the Field record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Field record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Field"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Field record with the given id.","operationId":"Fields.delete","summary":"Fields.delete","tags":["Field"],"parameters":[{"name":"id","in":"path","description":"Id of the Field record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Field record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Field record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Fields.update","summary":"Fields.update","tags":["Field"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateFieldInput"}}}},"responses":{"200":{"description":"The changed Field record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Field"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Fields":{"get":{"description":"Returns a page of Field records, optionally filtered, sorted and limited to selected fields.","operationId":"Fields.list","summary":"Fields.list","tags":["Field"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Field records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Field"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Field record.","operationId":"Fields.create","summary":"Fields.create","tags":["Field"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createFieldInput"}}}},"responses":{"201":{"description":"The created Field record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Field"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Fields/batch-restore":{"post":{"description":"Restores the deleted Field records with the given ids.","operationId":"Fields.batch_restore","summary":"Fields.batch_restore","tags":["Field"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FieldMappings/{id}":{"get":{"description":"Returns the FieldMapping record with the given id.","operationId":"FieldMappings.get","summary":"FieldMappings.get","tags":["Field"],"parameters":[{"name":"id","in":"path","description":"Id of the FieldMapping record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The FieldMapping record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FieldMapping"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the FieldMapping record with the given id.","operationId":"FieldMappings.delete","summary":"FieldMappings.delete","tags":["Field"],"parameters":[{"name":"id","in":"path","description":"Id of the FieldMapping record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the FieldMapping record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the FieldMapping record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"FieldMappings.update","summary":"FieldMappings.update","tags":["Field"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateFieldMappingInput"}}}},"responses":{"200":{"description":"The changed FieldMapping record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FieldMapping"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FieldMappings":{"get":{"description":"Returns a page of FieldMapping records, optionally filtered, sorted and limited to selected fields.","operationId":"FieldMappings.list","summary":"FieldMappings.list","tags":["Field"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of FieldMapping records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/FieldMapping"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a FieldMapping record.","operationId":"FieldMappings.create","summary":"FieldMappings.create","tags":["Field"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createFieldMappingInput"}}}},"responses":{"201":{"description":"The created FieldMapping record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FieldMapping"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FieldMappings/batch-delete":{"post":{"description":"Deletes the FieldMapping records with the given ids.","operationId":"FieldMappings.batch_delete","summary":"FieldMappings.batch_delete","tags":["Field"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FieldMappings/batch-modify":{"post":{"description":"Creates or updates FieldMapping records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"FieldMappings.batch_create_or_update","summary":"FieldMappings.batch_create_or_update","tags":["Field"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchFieldMappingInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FieldMappings/batch-restore":{"post":{"description":"Restores the deleted FieldMapping records with the given ids.","operationId":"FieldMappings.batch_restore","summary":"FieldMappings.batch_restore","tags":["Field"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FieldPermissions/{id}":{"get":{"description":"Returns the FieldPermission record with the given id.","operationId":"FieldPermissions.get","summary":"FieldPermissions.get","tags":["Field"],"parameters":[{"name":"id","in":"path","description":"Id of the FieldPermission record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The FieldPermission record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FieldPermission"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the FieldPermission record with the given id.","operationId":"FieldPermissions.delete","summary":"FieldPermissions.delete","tags":["Field"],"parameters":[{"name":"id","in":"path","description":"Id of the FieldPermission record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the FieldPermission record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the FieldPermission record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"FieldPermissions.update","summary":"FieldPermissions.update","tags":["Field"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateFieldPermissionInput"}}}},"responses":{"200":{"description":"The changed FieldPermission record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FieldPermission"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FieldPermissions":{"get":{"description":"Returns a page of FieldPermission records, optionally filtered, sorted and limited to selected fields.","operationId":"FieldPermissions.list","summary":"FieldPermissions.list","tags":["Field"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of FieldPermission records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/FieldPermission"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a FieldPermission record.","operationId":"FieldPermissions.create","summary":"FieldPermissions.create","tags":["Field"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createFieldPermissionInput"}}}},"responses":{"201":{"description":"The created FieldPermission record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FieldPermission"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FieldPermissions/batch-delete":{"post":{"description":"Deletes the FieldPermission records with the given ids.","operationId":"FieldPermissions.batch_delete","summary":"FieldPermissions.batch_delete","tags":["Field"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FieldPermissions/batch-modify":{"post":{"description":"Creates or updates FieldPermission records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"FieldPermissions.batch_create_or_update","summary":"FieldPermissions.batch_create_or_update","tags":["Field"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchFieldPermissionInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FieldPermissions/batch-restore":{"post":{"description":"Restores the deleted FieldPermission records with the given ids.","operationId":"FieldPermissions.batch_restore","summary":"FieldPermissions.batch_restore","tags":["Field"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FieldSequences/{id}":{"get":{"description":"Returns the FieldSequence record with the given id.","operationId":"FieldSequences.get","summary":"FieldSequences.get","tags":["Field"],"parameters":[{"name":"id","in":"path","description":"Id of the FieldSequence record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The FieldSequence record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FieldSequence"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FieldSequences":{"get":{"description":"Returns a page of FieldSequence records, optionally filtered, sorted and limited to selected fields.","operationId":"FieldSequences.list","summary":"FieldSequences.list","tags":["Field"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of FieldSequence records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/FieldSequence"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Forecasts/{id}":{"get":{"description":"Returns the Forecast record with the given id.","operationId":"Forecasts.get","summary":"Forecasts.get","tags":["Forecast"],"parameters":[{"name":"id","in":"path","description":"Id of the Forecast record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Forecast record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Forecast"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Forecast record with the given id.","operationId":"Forecasts.delete","summary":"Forecasts.delete","tags":["Forecast"],"parameters":[{"name":"id","in":"path","description":"Id of the Forecast record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Forecast record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Forecast record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Forecasts.update","summary":"Forecasts.update","tags":["Forecast"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateForecastInput"}}}},"responses":{"200":{"description":"The changed Forecast record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Forecast"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Forecasts":{"get":{"description":"Returns a page of Forecast records, optionally filtered, sorted and limited to selected fields.","operationId":"Forecasts.list","summary":"Forecasts.list","tags":["Forecast"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Forecast records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Forecast"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Forecast record.","operationId":"Forecasts.create","summary":"Forecasts.create","tags":["Forecast"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createForecastInput"}}}},"responses":{"201":{"description":"The created Forecast record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Forecast"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Forecasts/batch-delete":{"post":{"description":"Deletes the Forecast records with the given ids.","operationId":"Forecasts.batch_delete","summary":"Forecasts.batch_delete","tags":["Forecast"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Forecasts/batch-modify":{"post":{"description":"Creates or updates Forecast records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Forecasts.batch_create_or_update","summary":"Forecasts.batch_create_or_update","tags":["Forecast"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchForecastInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Forecasts/batch-restore":{"post":{"description":"Restores the deleted Forecast records with the given ids.","operationId":"Forecasts.batch_restore","summary":"Forecasts.batch_restore","tags":["Forecast"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViews/{id}":{"get":{"description":"Returns the FormView record with the given id.","operationId":"FormViews.get","summary":"FormViews.get","tags":["Form"],"parameters":[{"name":"id","in":"path","description":"Id of the FormView record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The FormView record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FormView"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the FormView record with the given id.","operationId":"FormViews.delete","summary":"FormViews.delete","tags":["Form"],"parameters":[{"name":"id","in":"path","description":"Id of the FormView record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the FormView record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the FormView record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"FormViews.update","summary":"FormViews.update","tags":["Form"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateFormViewInput"}}}},"responses":{"200":{"description":"The changed FormView record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FormView"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViews":{"get":{"description":"Returns a page of FormView records, optionally filtered, sorted and limited to selected fields.","operationId":"FormViews.list","summary":"FormViews.list","tags":["Form"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of FormView records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/FormView"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a FormView record.","operationId":"FormViews.create","summary":"FormViews.create","tags":["Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createFormViewInput"}}}},"responses":{"201":{"description":"The created FormView record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FormView"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViews/batch-delete":{"post":{"description":"Deletes the FormView records with the given ids.","operationId":"FormViews.batch_delete","summary":"FormViews.batch_delete","tags":["Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViews/batch-modify":{"post":{"description":"Creates or updates FormView records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"FormViews.batch_create_or_update","summary":"FormViews.batch_create_or_update","tags":["Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchFormViewInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViews/batch-restore":{"post":{"description":"Restores the deleted FormView records with the given ids.","operationId":"FormViews.batch_restore","summary":"FormViews.batch_restore","tags":["Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViewSharingClientRelations/{id}":{"get":{"description":"Returns the FormViewSharingClientRelation record with the given id.","operationId":"FormViewSharingClientRelations.get","summary":"FormViewSharingClientRelations.get","tags":["Form"],"parameters":[{"name":"id","in":"path","description":"Id of the FormViewSharingClientRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The FormViewSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FormViewSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the FormViewSharingClientRelation record with the given id.","operationId":"FormViewSharingClientRelations.delete","summary":"FormViewSharingClientRelations.delete","tags":["Form"],"parameters":[{"name":"id","in":"path","description":"Id of the FormViewSharingClientRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the FormViewSharingClientRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the FormViewSharingClientRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"FormViewSharingClientRelations.update","summary":"FormViewSharingClientRelations.update","tags":["Form"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateFormViewSharingClientRelationInput"}}}},"responses":{"200":{"description":"The changed FormViewSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FormViewSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViewSharingClientRelations":{"get":{"description":"Returns a page of FormViewSharingClientRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"FormViewSharingClientRelations.list","summary":"FormViewSharingClientRelations.list","tags":["Form"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of FormViewSharingClientRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/FormViewSharingClientRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a FormViewSharingClientRelation record.","operationId":"FormViewSharingClientRelations.create","summary":"FormViewSharingClientRelations.create","tags":["Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createFormViewSharingClientRelationInput"}}}},"responses":{"201":{"description":"The created FormViewSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FormViewSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViewSharingClientRelations/batch-delete":{"post":{"description":"Deletes the FormViewSharingClientRelation records with the given ids.","operationId":"FormViewSharingClientRelations.batch_delete","summary":"FormViewSharingClientRelations.batch_delete","tags":["Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViewSharingClientRelations/batch-modify":{"post":{"description":"Creates or updates FormViewSharingClientRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"FormViewSharingClientRelations.batch_create_or_update","summary":"FormViewSharingClientRelations.batch_create_or_update","tags":["Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchFormViewSharingClientRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViewSharingClientRelations/batch-restore":{"post":{"description":"Restores the deleted FormViewSharingClientRelation records with the given ids.","operationId":"FormViewSharingClientRelations.batch_restore","summary":"FormViewSharingClientRelations.batch_restore","tags":["Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViewSharingSalesUnitRelations/{id}":{"get":{"description":"Returns the FormViewSharingSalesUnitRelation record with the given id.","operationId":"FormViewSharingSalesUnitRelations.get","summary":"FormViewSharingSalesUnitRelations.get","tags":["Form"],"parameters":[{"name":"id","in":"path","description":"Id of the FormViewSharingSalesUnitRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The FormViewSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FormViewSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the FormViewSharingSalesUnitRelation record with the given id.","operationId":"FormViewSharingSalesUnitRelations.delete","summary":"FormViewSharingSalesUnitRelations.delete","tags":["Form"],"parameters":[{"name":"id","in":"path","description":"Id of the FormViewSharingSalesUnitRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the FormViewSharingSalesUnitRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the FormViewSharingSalesUnitRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"FormViewSharingSalesUnitRelations.update","summary":"FormViewSharingSalesUnitRelations.update","tags":["Form"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateFormViewSharingSalesUnitRelationInput"}}}},"responses":{"200":{"description":"The changed FormViewSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FormViewSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViewSharingSalesUnitRelations":{"get":{"description":"Returns a page of FormViewSharingSalesUnitRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"FormViewSharingSalesUnitRelations.list","summary":"FormViewSharingSalesUnitRelations.list","tags":["Form"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of FormViewSharingSalesUnitRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/FormViewSharingSalesUnitRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a FormViewSharingSalesUnitRelation record.","operationId":"FormViewSharingSalesUnitRelations.create","summary":"FormViewSharingSalesUnitRelations.create","tags":["Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createFormViewSharingSalesUnitRelationInput"}}}},"responses":{"201":{"description":"The created FormViewSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/FormViewSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViewSharingSalesUnitRelations/batch-delete":{"post":{"description":"Deletes the FormViewSharingSalesUnitRelation records with the given ids.","operationId":"FormViewSharingSalesUnitRelations.batch_delete","summary":"FormViewSharingSalesUnitRelations.batch_delete","tags":["Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViewSharingSalesUnitRelations/batch-modify":{"post":{"description":"Creates or updates FormViewSharingSalesUnitRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"FormViewSharingSalesUnitRelations.batch_create_or_update","summary":"FormViewSharingSalesUnitRelations.batch_create_or_update","tags":["Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchFormViewSharingSalesUnitRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/FormViewSharingSalesUnitRelations/batch-restore":{"post":{"description":"Restores the deleted FormViewSharingSalesUnitRelation records with the given ids.","operationId":"FormViewSharingSalesUnitRelations.batch_restore","summary":"FormViewSharingSalesUnitRelations.batch_restore","tags":["Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContacts/{id}":{"get":{"description":"Returns the GhostContact record with the given id.","operationId":"GhostContacts.get","summary":"GhostContacts.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the GhostContact record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The GhostContact record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostContact"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the GhostContact record with the given id.","operationId":"GhostContacts.delete","summary":"GhostContacts.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the GhostContact record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the GhostContact record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the GhostContact record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"GhostContacts.update","summary":"GhostContacts.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateGhostContactInput"}}}},"responses":{"200":{"description":"The changed GhostContact record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostContact"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContacts":{"get":{"description":"Returns a page of GhostContact records, optionally filtered, sorted and limited to selected fields.","operationId":"GhostContacts.list","summary":"GhostContacts.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of GhostContact records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/GhostContact"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a GhostContact record.","operationId":"GhostContacts.create","summary":"GhostContacts.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createGhostContactInput"}}}},"responses":{"201":{"description":"The created GhostContact record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostContact"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContacts/batch-delete":{"post":{"description":"Deletes the GhostContact records with the given ids.","operationId":"GhostContacts.batch_delete","summary":"GhostContacts.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContacts/batch-modify":{"post":{"description":"Creates or updates GhostContact records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"GhostContacts.batch_create_or_update","summary":"GhostContacts.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchGhostContactInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContacts/batch-restore":{"post":{"description":"Restores the deleted GhostContact records with the given ids.","operationId":"GhostContacts.batch_restore","summary":"GhostContacts.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContactAccountAccountRoleRelations/{id}":{"get":{"description":"Returns the GhostContactAccountAccountRoleRelation record with the given id.","operationId":"GhostContactAccountAccountRoleRelations.get","summary":"GhostContactAccountAccountRoleRelations.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the GhostContactAccountAccountRoleRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The GhostContactAccountAccountRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostContactAccountAccountRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the GhostContactAccountAccountRoleRelation record with the given id.","operationId":"GhostContactAccountAccountRoleRelations.delete","summary":"GhostContactAccountAccountRoleRelations.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the GhostContactAccountAccountRoleRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the GhostContactAccountAccountRoleRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the GhostContactAccountAccountRoleRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"GhostContactAccountAccountRoleRelations.update","summary":"GhostContactAccountAccountRoleRelations.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateGhostContactAccountAccountRoleRelationInput"}}}},"responses":{"200":{"description":"The changed GhostContactAccountAccountRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostContactAccountAccountRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContactAccountAccountRoleRelations":{"get":{"description":"Returns a page of GhostContactAccountAccountRoleRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"GhostContactAccountAccountRoleRelations.list","summary":"GhostContactAccountAccountRoleRelations.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of GhostContactAccountAccountRoleRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/GhostContactAccountAccountRoleRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a GhostContactAccountAccountRoleRelation record.","operationId":"GhostContactAccountAccountRoleRelations.create","summary":"GhostContactAccountAccountRoleRelations.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createGhostContactAccountAccountRoleRelationInput"}}}},"responses":{"201":{"description":"The created GhostContactAccountAccountRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostContactAccountAccountRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContactAccountAccountRoleRelations/batch-delete":{"post":{"description":"Deletes the GhostContactAccountAccountRoleRelation records with the given ids.","operationId":"GhostContactAccountAccountRoleRelations.batch_delete","summary":"GhostContactAccountAccountRoleRelations.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContactAccountAccountRoleRelations/batch-modify":{"post":{"description":"Creates or updates GhostContactAccountAccountRoleRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"GhostContactAccountAccountRoleRelations.batch_create_or_update","summary":"GhostContactAccountAccountRoleRelations.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchGhostContactAccountAccountRoleRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContactAccountAccountRoleRelations/batch-restore":{"post":{"description":"Restores the deleted GhostContactAccountAccountRoleRelation records with the given ids.","operationId":"GhostContactAccountAccountRoleRelations.batch_restore","summary":"GhostContactAccountAccountRoleRelations.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContactAccountRelations/{id}":{"get":{"description":"Returns the GhostContactAccountRelation record with the given id.","operationId":"GhostContactAccountRelations.get","summary":"GhostContactAccountRelations.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the GhostContactAccountRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The GhostContactAccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostContactAccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the GhostContactAccountRelation record with the given id.","operationId":"GhostContactAccountRelations.delete","summary":"GhostContactAccountRelations.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the GhostContactAccountRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the GhostContactAccountRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the GhostContactAccountRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"GhostContactAccountRelations.update","summary":"GhostContactAccountRelations.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateGhostContactAccountRelationInput"}}}},"responses":{"200":{"description":"The changed GhostContactAccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostContactAccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContactAccountRelations":{"get":{"description":"Returns a page of GhostContactAccountRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"GhostContactAccountRelations.list","summary":"GhostContactAccountRelations.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of GhostContactAccountRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/GhostContactAccountRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a GhostContactAccountRelation record.","operationId":"GhostContactAccountRelations.create","summary":"GhostContactAccountRelations.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createGhostContactAccountRelationInput"}}}},"responses":{"201":{"description":"The created GhostContactAccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostContactAccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContactAccountRelations/batch-delete":{"post":{"description":"Deletes the GhostContactAccountRelation records with the given ids.","operationId":"GhostContactAccountRelations.batch_delete","summary":"GhostContactAccountRelations.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContactAccountRelations/batch-modify":{"post":{"description":"Creates or updates GhostContactAccountRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"GhostContactAccountRelations.batch_create_or_update","summary":"GhostContactAccountRelations.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchGhostContactAccountRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostContactAccountRelations/batch-restore":{"post":{"description":"Restores the deleted GhostContactAccountRelation records with the given ids.","operationId":"GhostContactAccountRelations.batch_restore","summary":"GhostContactAccountRelations.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostLeadOpptyContactRelations/{id}":{"get":{"description":"Returns the GhostLeadOpptyContactRelation record with the given id.","operationId":"GhostLeadOpptyContactRelations.get","summary":"GhostLeadOpptyContactRelations.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the GhostLeadOpptyContactRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The GhostLeadOpptyContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostLeadOpptyContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the GhostLeadOpptyContactRelation record with the given id.","operationId":"GhostLeadOpptyContactRelations.delete","summary":"GhostLeadOpptyContactRelations.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the GhostLeadOpptyContactRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the GhostLeadOpptyContactRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the GhostLeadOpptyContactRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"GhostLeadOpptyContactRelations.update","summary":"GhostLeadOpptyContactRelations.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateGhostLeadOpptyContactRelationInput"}}}},"responses":{"200":{"description":"The changed GhostLeadOpptyContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostLeadOpptyContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostLeadOpptyContactRelations":{"get":{"description":"Returns a page of GhostLeadOpptyContactRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"GhostLeadOpptyContactRelations.list","summary":"GhostLeadOpptyContactRelations.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of GhostLeadOpptyContactRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/GhostLeadOpptyContactRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a GhostLeadOpptyContactRelation record.","operationId":"GhostLeadOpptyContactRelations.create","summary":"GhostLeadOpptyContactRelations.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createGhostLeadOpptyContactRelationInput"}}}},"responses":{"201":{"description":"The created GhostLeadOpptyContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostLeadOpptyContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostLeadOpptyContactRelations/batch-delete":{"post":{"description":"Deletes the GhostLeadOpptyContactRelation records with the given ids.","operationId":"GhostLeadOpptyContactRelations.batch_delete","summary":"GhostLeadOpptyContactRelations.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostLeadOpptyContactRelations/batch-modify":{"post":{"description":"Creates or updates GhostLeadOpptyContactRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"GhostLeadOpptyContactRelations.batch_create_or_update","summary":"GhostLeadOpptyContactRelations.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchGhostLeadOpptyContactRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostLeadOpptyContactRelations/batch-restore":{"post":{"description":"Restores the deleted GhostLeadOpptyContactRelation records with the given ids.","operationId":"GhostLeadOpptyContactRelations.batch_restore","summary":"GhostLeadOpptyContactRelations.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostLeadOpptyContactSalesRoleRelations/{id}":{"get":{"description":"Returns the GhostLeadOpptyContactSalesRoleRelation record with the given id.","operationId":"GhostLeadOpptyContactSalesRoleRelations.get","summary":"GhostLeadOpptyContactSalesRoleRelations.get","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the GhostLeadOpptyContactSalesRoleRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The GhostLeadOpptyContactSalesRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostLeadOpptyContactSalesRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the GhostLeadOpptyContactSalesRoleRelation record with the given id.","operationId":"GhostLeadOpptyContactSalesRoleRelations.delete","summary":"GhostLeadOpptyContactSalesRoleRelations.delete","tags":["Contact"],"parameters":[{"name":"id","in":"path","description":"Id of the GhostLeadOpptyContactSalesRoleRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the GhostLeadOpptyContactSalesRoleRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the GhostLeadOpptyContactSalesRoleRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"GhostLeadOpptyContactSalesRoleRelations.update","summary":"GhostLeadOpptyContactSalesRoleRelations.update","tags":["Contact"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateGhostLeadOpptyContactSalesRoleRelationInput"}}}},"responses":{"200":{"description":"The changed GhostLeadOpptyContactSalesRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostLeadOpptyContactSalesRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostLeadOpptyContactSalesRoleRelations":{"get":{"description":"Returns a page of GhostLeadOpptyContactSalesRoleRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"GhostLeadOpptyContactSalesRoleRelations.list","summary":"GhostLeadOpptyContactSalesRoleRelations.list","tags":["Contact"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of GhostLeadOpptyContactSalesRoleRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/GhostLeadOpptyContactSalesRoleRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a GhostLeadOpptyContactSalesRoleRelation record.","operationId":"GhostLeadOpptyContactSalesRoleRelations.create","summary":"GhostLeadOpptyContactSalesRoleRelations.create","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createGhostLeadOpptyContactSalesRoleRelationInput"}}}},"responses":{"201":{"description":"The created GhostLeadOpptyContactSalesRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/GhostLeadOpptyContactSalesRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostLeadOpptyContactSalesRoleRelations/batch-delete":{"post":{"description":"Deletes the GhostLeadOpptyContactSalesRoleRelation records with the given ids.","operationId":"GhostLeadOpptyContactSalesRoleRelations.batch_delete","summary":"GhostLeadOpptyContactSalesRoleRelations.batch_delete","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostLeadOpptyContactSalesRoleRelations/batch-modify":{"post":{"description":"Creates or updates GhostLeadOpptyContactSalesRoleRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"GhostLeadOpptyContactSalesRoleRelations.batch_create_or_update","summary":"GhostLeadOpptyContactSalesRoleRelations.batch_create_or_update","tags":["Contact"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchGhostLeadOpptyContactSalesRoleRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/GhostLeadOpptyContactSalesRoleRelations/batch-restore":{"post":{"description":"Restores the deleted GhostLeadOpptyContactSalesRoleRelation records with the given ids.","operationId":"GhostLeadOpptyContactSalesRoleRelations.batch_restore","summary":"GhostLeadOpptyContactSalesRoleRelations.batch_restore","tags":["Contact"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ImportMappingMasks/{id}":{"get":{"description":"Returns the ImportMappingMask record with the given id.","operationId":"ImportMappingMasks.get","summary":"ImportMappingMasks.get","tags":["Import"],"parameters":[{"name":"id","in":"path","description":"Id of the ImportMappingMask record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ImportMappingMask record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ImportMappingMask"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ImportMappingMask record with the given id.","operationId":"ImportMappingMasks.delete","summary":"ImportMappingMasks.delete","tags":["Import"],"parameters":[{"name":"id","in":"path","description":"Id of the ImportMappingMask record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ImportMappingMask record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ImportMappingMask record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ImportMappingMasks.update","summary":"ImportMappingMasks.update","tags":["Import"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateImportMappingMaskInput"}}}},"responses":{"200":{"description":"The changed ImportMappingMask record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ImportMappingMask"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ImportMappingMasks":{"get":{"description":"Returns a page of ImportMappingMask records, optionally filtered, sorted and limited to selected fields.","operationId":"ImportMappingMasks.list","summary":"ImportMappingMasks.list","tags":["Import"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ImportMappingMask records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ImportMappingMask"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ImportMappingMask record.","operationId":"ImportMappingMasks.create","summary":"ImportMappingMasks.create","tags":["Import"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createImportMappingMaskInput"}}}},"responses":{"201":{"description":"The created ImportMappingMask record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ImportMappingMask"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ImportMappingMasks/batch-delete":{"post":{"description":"Deletes the ImportMappingMask records with the given ids.","operationId":"ImportMappingMasks.batch_delete","summary":"ImportMappingMasks.batch_delete","tags":["Import"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ImportMappingMasks/batch-modify":{"post":{"description":"Creates or updates ImportMappingMask records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ImportMappingMasks.batch_create_or_update","summary":"ImportMappingMasks.batch_create_or_update","tags":["Import"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchImportMappingMaskInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ImportMappingMasks/batch-restore":{"post":{"description":"Restores the deleted ImportMappingMask records with the given ids.","operationId":"ImportMappingMasks.batch_restore","summary":"ImportMappingMasks.batch_restore","tags":["Import"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/InterfacePreviews/{id}":{"get":{"description":"Returns the InterfacePreview record with the given id.","operationId":"InterfacePreviews.get","summary":"InterfacePreviews.get","tags":["Interface"],"parameters":[{"name":"id","in":"path","description":"Id of the InterfacePreview record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The InterfacePreview record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/InterfacePreview"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the InterfacePreview record with the given id.","operationId":"InterfacePreviews.delete","summary":"InterfacePreviews.delete","tags":["Interface"],"parameters":[{"name":"id","in":"path","description":"Id of the InterfacePreview record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the InterfacePreview record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the InterfacePreview record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"InterfacePreviews.update","summary":"InterfacePreviews.update","tags":["Interface"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateInterfacePreviewInput"}}}},"responses":{"200":{"description":"The changed InterfacePreview record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/InterfacePreview"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/InterfacePreviews":{"get":{"description":"Returns a page of InterfacePreview records, optionally filtered, sorted and limited to selected fields.","operationId":"InterfacePreviews.list","summary":"InterfacePreviews.list","tags":["Interface"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of InterfacePreview records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/InterfacePreview"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a InterfacePreview record.","operationId":"InterfacePreviews.create","summary":"InterfacePreviews.create","tags":["Interface"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createInterfacePreviewInput"}}}},"responses":{"201":{"description":"The created InterfacePreview record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/InterfacePreview"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/InterfacePreviews/batch-delete":{"post":{"description":"Deletes the InterfacePreview records with the given ids.","operationId":"InterfacePreviews.batch_delete","summary":"InterfacePreviews.batch_delete","tags":["Interface"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/InterfacePreviews/batch-modify":{"post":{"description":"Creates or updates InterfacePreview records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"InterfacePreviews.batch_create_or_update","summary":"InterfacePreviews.batch_create_or_update","tags":["Interface"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchInterfacePreviewInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/InterfacePreviews/batch-restore":{"post":{"description":"Restores the deleted InterfacePreview records with the given ids.","operationId":"InterfacePreviews.batch_restore","summary":"InterfacePreviews.batch_restore","tags":["Interface"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Leads/{id}":{"get":{"description":"Returns one lead by id.","operationId":"Leads.get","summary":"Get a lead","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the Lead record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Lead record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Lead"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Soft-deletes one lead and answers with its id.","operationId":"Leads.delete","summary":"Delete a lead","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the Lead record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes the fields you send and leaves the rest as they are. Qualifying a lead is a GraphQL action, not an update.","parameters":[{"name":"id","in":"path","description":"Id of the Lead record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Leads.update","summary":"Update a lead","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateLeadInput"}}}},"responses":{"200":{"description":"The changed Lead record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Lead"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Leads":{"get":{"description":"Returns the leads the API application can read, one page at a time.","operationId":"Leads.list","summary":"List leads","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Lead records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Lead"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates one lead and answers 201 with the record. `name` is required, and a sales unit through `owner_id` or `unit_id`.","operationId":"Leads.create","summary":"Create a lead","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createLeadInput"},"example":{"name":"Northwind Analytics - CRM rollout","owner_id":"37000000-0000-4000-a000-000000000001","quick_account_name":"Northwind Analytics","quick_email":"northwind@example.com"}}}},"responses":{"201":{"description":"The created Lead record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Lead"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Leads/batch-delete":{"post":{"description":"Soft-deletes the leads whose ids are in the body, a JSON array.","operationId":"Leads.batch_delete","summary":"Delete leads in a batch","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Leads/batch-modify":{"post":{"description":"An item with an `id` updates that lead; an item without one creates a lead. By default one invalid item fails the whole call with HTTP 422.","operationId":"Leads.batch_create_or_update","summary":"Create or update leads in a batch","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchLeadInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Leads/batch-restore":{"post":{"description":"Restores the soft-deleted leads whose ids are in the body, a JSON array.","operationId":"Leads.batch_restore","summary":"Restore deleted leads","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOppties/{id}":{"get":{"description":"Returns the LeadOppty record with the given id.","operationId":"LeadOppties.get","summary":"LeadOppties.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOppty record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The LeadOppty record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOppty"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOppties":{"get":{"description":"Returns a page of LeadOppty records, optionally filtered, sorted and limited to selected fields.","operationId":"LeadOppties.list","summary":"LeadOppties.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of LeadOppty records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/LeadOppty"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyAccountRelations/{id}":{"get":{"description":"Returns the LeadOpptyAccountRelation record with the given id.","operationId":"LeadOpptyAccountRelations.get","summary":"LeadOpptyAccountRelations.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyAccountRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The LeadOpptyAccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyAccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the LeadOpptyAccountRelation record with the given id.","operationId":"LeadOpptyAccountRelations.delete","summary":"LeadOpptyAccountRelations.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyAccountRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the LeadOpptyAccountRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyAccountRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"LeadOpptyAccountRelations.update","summary":"LeadOpptyAccountRelations.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateLeadOpptyAccountRelationInput"}}}},"responses":{"200":{"description":"The changed LeadOpptyAccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyAccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyAccountRelations":{"get":{"description":"Returns a page of LeadOpptyAccountRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"LeadOpptyAccountRelations.list","summary":"LeadOpptyAccountRelations.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of LeadOpptyAccountRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/LeadOpptyAccountRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a LeadOpptyAccountRelation record.","operationId":"LeadOpptyAccountRelations.create","summary":"LeadOpptyAccountRelations.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createLeadOpptyAccountRelationInput"}}}},"responses":{"201":{"description":"The created LeadOpptyAccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyAccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyAccountRelations/batch-delete":{"post":{"description":"Deletes the LeadOpptyAccountRelation records with the given ids.","operationId":"LeadOpptyAccountRelations.batch_delete","summary":"LeadOpptyAccountRelations.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyAccountRelations/batch-modify":{"post":{"description":"Creates or updates LeadOpptyAccountRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"LeadOpptyAccountRelations.batch_create_or_update","summary":"LeadOpptyAccountRelations.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchLeadOpptyAccountRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyAccountRelations/batch-restore":{"post":{"description":"Restores the deleted LeadOpptyAccountRelation records with the given ids.","operationId":"LeadOpptyAccountRelations.batch_restore","summary":"LeadOpptyAccountRelations.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactGroupRelations/{id}":{"get":{"description":"Returns the LeadOpptyContactGroupRelation record with the given id.","operationId":"LeadOpptyContactGroupRelations.get","summary":"LeadOpptyContactGroupRelations.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyContactGroupRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The LeadOpptyContactGroupRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyContactGroupRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the LeadOpptyContactGroupRelation record with the given id.","operationId":"LeadOpptyContactGroupRelations.delete","summary":"LeadOpptyContactGroupRelations.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyContactGroupRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the LeadOpptyContactGroupRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyContactGroupRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"LeadOpptyContactGroupRelations.update","summary":"LeadOpptyContactGroupRelations.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateLeadOpptyContactGroupRelationInput"}}}},"responses":{"200":{"description":"The changed LeadOpptyContactGroupRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyContactGroupRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactGroupRelations":{"get":{"description":"Returns a page of LeadOpptyContactGroupRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"LeadOpptyContactGroupRelations.list","summary":"LeadOpptyContactGroupRelations.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of LeadOpptyContactGroupRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/LeadOpptyContactGroupRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a LeadOpptyContactGroupRelation record.","operationId":"LeadOpptyContactGroupRelations.create","summary":"LeadOpptyContactGroupRelations.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createLeadOpptyContactGroupRelationInput"}}}},"responses":{"201":{"description":"The created LeadOpptyContactGroupRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyContactGroupRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactGroupRelations/batch-delete":{"post":{"description":"Deletes the LeadOpptyContactGroupRelation records with the given ids.","operationId":"LeadOpptyContactGroupRelations.batch_delete","summary":"LeadOpptyContactGroupRelations.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactGroupRelations/batch-modify":{"post":{"description":"Creates or updates LeadOpptyContactGroupRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"LeadOpptyContactGroupRelations.batch_create_or_update","summary":"LeadOpptyContactGroupRelations.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchLeadOpptyContactGroupRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactGroupRelations/batch-restore":{"post":{"description":"Restores the deleted LeadOpptyContactGroupRelation records with the given ids.","operationId":"LeadOpptyContactGroupRelations.batch_restore","summary":"LeadOpptyContactGroupRelations.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactRelations/{id}":{"get":{"description":"Returns the LeadOpptyContactRelation record with the given id.","operationId":"LeadOpptyContactRelations.get","summary":"LeadOpptyContactRelations.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyContactRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The LeadOpptyContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the LeadOpptyContactRelation record with the given id.","operationId":"LeadOpptyContactRelations.delete","summary":"LeadOpptyContactRelations.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyContactRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the LeadOpptyContactRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyContactRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"LeadOpptyContactRelations.update","summary":"LeadOpptyContactRelations.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateLeadOpptyContactRelationInput"}}}},"responses":{"200":{"description":"The changed LeadOpptyContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactRelations":{"get":{"description":"Returns a page of LeadOpptyContactRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"LeadOpptyContactRelations.list","summary":"LeadOpptyContactRelations.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of LeadOpptyContactRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/LeadOpptyContactRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a LeadOpptyContactRelation record.","operationId":"LeadOpptyContactRelations.create","summary":"LeadOpptyContactRelations.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createLeadOpptyContactRelationInput"}}}},"responses":{"201":{"description":"The created LeadOpptyContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactRelations/batch-delete":{"post":{"description":"Deletes the LeadOpptyContactRelation records with the given ids.","operationId":"LeadOpptyContactRelations.batch_delete","summary":"LeadOpptyContactRelations.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactRelations/batch-modify":{"post":{"description":"Creates or updates LeadOpptyContactRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"LeadOpptyContactRelations.batch_create_or_update","summary":"LeadOpptyContactRelations.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchLeadOpptyContactRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactRelations/batch-restore":{"post":{"description":"Restores the deleted LeadOpptyContactRelation records with the given ids.","operationId":"LeadOpptyContactRelations.batch_restore","summary":"LeadOpptyContactRelations.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactSalesRoleRelations/{id}":{"get":{"description":"Returns the LeadOpptyContactSalesRoleRelation record with the given id.","operationId":"LeadOpptyContactSalesRoleRelations.get","summary":"LeadOpptyContactSalesRoleRelations.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyContactSalesRoleRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The LeadOpptyContactSalesRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyContactSalesRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the LeadOpptyContactSalesRoleRelation record with the given id.","operationId":"LeadOpptyContactSalesRoleRelations.delete","summary":"LeadOpptyContactSalesRoleRelations.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyContactSalesRoleRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the LeadOpptyContactSalesRoleRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyContactSalesRoleRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"LeadOpptyContactSalesRoleRelations.update","summary":"LeadOpptyContactSalesRoleRelations.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateLeadOpptyContactSalesRoleRelationInput"}}}},"responses":{"200":{"description":"The changed LeadOpptyContactSalesRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyContactSalesRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactSalesRoleRelations":{"get":{"description":"Returns a page of LeadOpptyContactSalesRoleRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"LeadOpptyContactSalesRoleRelations.list","summary":"LeadOpptyContactSalesRoleRelations.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of LeadOpptyContactSalesRoleRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/LeadOpptyContactSalesRoleRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a LeadOpptyContactSalesRoleRelation record.","operationId":"LeadOpptyContactSalesRoleRelations.create","summary":"LeadOpptyContactSalesRoleRelations.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createLeadOpptyContactSalesRoleRelationInput"}}}},"responses":{"201":{"description":"The created LeadOpptyContactSalesRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyContactSalesRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactSalesRoleRelations/batch-delete":{"post":{"description":"Deletes the LeadOpptyContactSalesRoleRelation records with the given ids.","operationId":"LeadOpptyContactSalesRoleRelations.batch_delete","summary":"LeadOpptyContactSalesRoleRelations.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactSalesRoleRelations/batch-modify":{"post":{"description":"Creates or updates LeadOpptyContactSalesRoleRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"LeadOpptyContactSalesRoleRelations.batch_create_or_update","summary":"LeadOpptyContactSalesRoleRelations.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchLeadOpptyContactSalesRoleRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyContactSalesRoleRelations/batch-restore":{"post":{"description":"Restores the deleted LeadOpptyContactSalesRoleRelation records with the given ids.","operationId":"LeadOpptyContactSalesRoleRelations.batch_restore","summary":"LeadOpptyContactSalesRoleRelations.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyDataExRelations/{id}":{"get":{"description":"Returns the LeadOpptyDataExRelation record with the given id.","operationId":"LeadOpptyDataExRelations.get","summary":"LeadOpptyDataExRelations.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyDataExRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The LeadOpptyDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyDataExRelations":{"get":{"description":"Returns a page of LeadOpptyDataExRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"LeadOpptyDataExRelations.list","summary":"LeadOpptyDataExRelations.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of LeadOpptyDataExRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/LeadOpptyDataExRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyKPIs/{id}":{"get":{"description":"Returns the LeadOpptyKPI record with the given id.","operationId":"LeadOpptyKPIs.get","summary":"LeadOpptyKPIs.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyKPI record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The LeadOpptyKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the LeadOpptyKPI record with the given id.","operationId":"LeadOpptyKPIs.delete","summary":"LeadOpptyKPIs.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyKPI record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the LeadOpptyKPI record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyKPI record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"LeadOpptyKPIs.update","summary":"LeadOpptyKPIs.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateLeadOpptyKPIInput"}}}},"responses":{"200":{"description":"The changed LeadOpptyKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyKPIs":{"get":{"description":"Returns a page of LeadOpptyKPI records, optionally filtered, sorted and limited to selected fields.","operationId":"LeadOpptyKPIs.list","summary":"LeadOpptyKPIs.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of LeadOpptyKPI records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/LeadOpptyKPI"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a LeadOpptyKPI record.","operationId":"LeadOpptyKPIs.create","summary":"LeadOpptyKPIs.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createLeadOpptyKPIInput"}}}},"responses":{"201":{"description":"The created LeadOpptyKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyKPIs/batch-delete":{"post":{"description":"Deletes the LeadOpptyKPI records with the given ids.","operationId":"LeadOpptyKPIs.batch_delete","summary":"LeadOpptyKPIs.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyKPIs/batch-modify":{"post":{"description":"Creates or updates LeadOpptyKPI records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"LeadOpptyKPIs.batch_create_or_update","summary":"LeadOpptyKPIs.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchLeadOpptyKPIInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyKPIs/batch-restore":{"post":{"description":"Restores the deleted LeadOpptyKPI records with the given ids.","operationId":"LeadOpptyKPIs.batch_restore","summary":"LeadOpptyKPIs.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptySharingClientRelations/{id}":{"get":{"description":"Returns the LeadOpptySharingClientRelation record with the given id.","operationId":"LeadOpptySharingClientRelations.get","summary":"LeadOpptySharingClientRelations.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptySharingClientRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The LeadOpptySharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptySharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the LeadOpptySharingClientRelation record with the given id.","operationId":"LeadOpptySharingClientRelations.delete","summary":"LeadOpptySharingClientRelations.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptySharingClientRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the LeadOpptySharingClientRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptySharingClientRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"LeadOpptySharingClientRelations.update","summary":"LeadOpptySharingClientRelations.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateLeadOpptySharingClientRelationInput"}}}},"responses":{"200":{"description":"The changed LeadOpptySharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptySharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptySharingClientRelations":{"get":{"description":"Returns a page of LeadOpptySharingClientRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"LeadOpptySharingClientRelations.list","summary":"LeadOpptySharingClientRelations.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of LeadOpptySharingClientRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/LeadOpptySharingClientRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a LeadOpptySharingClientRelation record.","operationId":"LeadOpptySharingClientRelations.create","summary":"LeadOpptySharingClientRelations.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createLeadOpptySharingClientRelationInput"}}}},"responses":{"201":{"description":"The created LeadOpptySharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptySharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptySharingClientRelations/batch-delete":{"post":{"description":"Deletes the LeadOpptySharingClientRelation records with the given ids.","operationId":"LeadOpptySharingClientRelations.batch_delete","summary":"LeadOpptySharingClientRelations.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptySharingClientRelations/batch-modify":{"post":{"description":"Creates or updates LeadOpptySharingClientRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"LeadOpptySharingClientRelations.batch_create_or_update","summary":"LeadOpptySharingClientRelations.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchLeadOpptySharingClientRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptySharingClientRelations/batch-restore":{"post":{"description":"Restores the deleted LeadOpptySharingClientRelation records with the given ids.","operationId":"LeadOpptySharingClientRelations.batch_restore","summary":"LeadOpptySharingClientRelations.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptySharingSalesUnitRelations/{id}":{"get":{"description":"Returns the LeadOpptySharingSalesUnitRelation record with the given id.","operationId":"LeadOpptySharingSalesUnitRelations.get","summary":"LeadOpptySharingSalesUnitRelations.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptySharingSalesUnitRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The LeadOpptySharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptySharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the LeadOpptySharingSalesUnitRelation record with the given id.","operationId":"LeadOpptySharingSalesUnitRelations.delete","summary":"LeadOpptySharingSalesUnitRelations.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptySharingSalesUnitRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the LeadOpptySharingSalesUnitRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptySharingSalesUnitRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"LeadOpptySharingSalesUnitRelations.update","summary":"LeadOpptySharingSalesUnitRelations.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateLeadOpptySharingSalesUnitRelationInput"}}}},"responses":{"200":{"description":"The changed LeadOpptySharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptySharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptySharingSalesUnitRelations":{"get":{"description":"Returns a page of LeadOpptySharingSalesUnitRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"LeadOpptySharingSalesUnitRelations.list","summary":"LeadOpptySharingSalesUnitRelations.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of LeadOpptySharingSalesUnitRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/LeadOpptySharingSalesUnitRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a LeadOpptySharingSalesUnitRelation record.","operationId":"LeadOpptySharingSalesUnitRelations.create","summary":"LeadOpptySharingSalesUnitRelations.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createLeadOpptySharingSalesUnitRelationInput"}}}},"responses":{"201":{"description":"The created LeadOpptySharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptySharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptySharingSalesUnitRelations/batch-delete":{"post":{"description":"Deletes the LeadOpptySharingSalesUnitRelation records with the given ids.","operationId":"LeadOpptySharingSalesUnitRelations.batch_delete","summary":"LeadOpptySharingSalesUnitRelations.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptySharingSalesUnitRelations/batch-modify":{"post":{"description":"Creates or updates LeadOpptySharingSalesUnitRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"LeadOpptySharingSalesUnitRelations.batch_create_or_update","summary":"LeadOpptySharingSalesUnitRelations.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchLeadOpptySharingSalesUnitRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptySharingSalesUnitRelations/batch-restore":{"post":{"description":"Restores the deleted LeadOpptySharingSalesUnitRelation records with the given ids.","operationId":"LeadOpptySharingSalesUnitRelations.batch_restore","summary":"LeadOpptySharingSalesUnitRelations.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyStepCheckListRelations/{id}":{"get":{"description":"Returns the LeadOpptyStepCheckListRelation record with the given id.","operationId":"LeadOpptyStepCheckListRelations.get","summary":"LeadOpptyStepCheckListRelations.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyStepCheckListRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The LeadOpptyStepCheckListRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyStepCheckListRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the LeadOpptyStepCheckListRelation record with the given id.","operationId":"LeadOpptyStepCheckListRelations.delete","summary":"LeadOpptyStepCheckListRelations.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyStepCheckListRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the LeadOpptyStepCheckListRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the LeadOpptyStepCheckListRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"LeadOpptyStepCheckListRelations.update","summary":"LeadOpptyStepCheckListRelations.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateLeadOpptyStepCheckListRelationInput"}}}},"responses":{"200":{"description":"The changed LeadOpptyStepCheckListRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyStepCheckListRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyStepCheckListRelations":{"get":{"description":"Returns a page of LeadOpptyStepCheckListRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"LeadOpptyStepCheckListRelations.list","summary":"LeadOpptyStepCheckListRelations.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of LeadOpptyStepCheckListRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/LeadOpptyStepCheckListRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a LeadOpptyStepCheckListRelation record.","operationId":"LeadOpptyStepCheckListRelations.create","summary":"LeadOpptyStepCheckListRelations.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createLeadOpptyStepCheckListRelationInput"}}}},"responses":{"201":{"description":"The created LeadOpptyStepCheckListRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadOpptyStepCheckListRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyStepCheckListRelations/batch-delete":{"post":{"description":"Deletes the LeadOpptyStepCheckListRelation records with the given ids.","operationId":"LeadOpptyStepCheckListRelations.batch_delete","summary":"LeadOpptyStepCheckListRelations.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyStepCheckListRelations/batch-modify":{"post":{"description":"Creates or updates LeadOpptyStepCheckListRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"LeadOpptyStepCheckListRelations.batch_create_or_update","summary":"LeadOpptyStepCheckListRelations.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchLeadOpptyStepCheckListRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadOpptyStepCheckListRelations/batch-restore":{"post":{"description":"Restores the deleted LeadOpptyStepCheckListRelation records with the given ids.","operationId":"LeadOpptyStepCheckListRelations.batch_restore","summary":"LeadOpptyStepCheckListRelations.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadProcesses/{id}":{"get":{"description":"Returns the LeadProcess record with the given id.","operationId":"LeadProcesses.get","summary":"LeadProcesses.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadProcess record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The LeadProcess record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadProcess"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the LeadProcess record with the given id.","operationId":"LeadProcesses.delete","summary":"LeadProcesses.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadProcess record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the LeadProcess record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the LeadProcess record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"LeadProcesses.update","summary":"LeadProcesses.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateLeadProcessInput"}}}},"responses":{"200":{"description":"The changed LeadProcess record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadProcess"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadProcesses":{"get":{"description":"Returns a page of LeadProcess records, optionally filtered, sorted and limited to selected fields.","operationId":"LeadProcesses.list","summary":"LeadProcesses.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of LeadProcess records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/LeadProcess"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a LeadProcess record.","operationId":"LeadProcesses.create","summary":"LeadProcesses.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createLeadProcessInput"}}}},"responses":{"201":{"description":"The created LeadProcess record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadProcess"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadProcesses/batch-delete":{"post":{"description":"Deletes the LeadProcess records with the given ids.","operationId":"LeadProcesses.batch_delete","summary":"LeadProcesses.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadProcesses/batch-modify":{"post":{"description":"Creates or updates LeadProcess records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"LeadProcesses.batch_create_or_update","summary":"LeadProcesses.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchLeadProcessInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadProcesses/batch-restore":{"post":{"description":"Restores the deleted LeadProcess records with the given ids.","operationId":"LeadProcesses.batch_restore","summary":"LeadProcesses.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadTypes/{id}":{"get":{"description":"Returns the LeadType record with the given id.","operationId":"LeadTypes.get","summary":"LeadTypes.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The LeadType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the LeadType record with the given id.","operationId":"LeadTypes.delete","summary":"LeadTypes.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the LeadType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the LeadType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the LeadType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"LeadTypes.update","summary":"LeadTypes.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateLeadTypeInput"}}}},"responses":{"200":{"description":"The changed LeadType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadTypes":{"get":{"description":"Returns a page of LeadType records, optionally filtered, sorted and limited to selected fields.","operationId":"LeadTypes.list","summary":"LeadTypes.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of LeadType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/LeadType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a LeadType record.","operationId":"LeadTypes.create","summary":"LeadTypes.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createLeadTypeInput"}}}},"responses":{"201":{"description":"The created LeadType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/LeadType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadTypes/batch-delete":{"post":{"description":"Deletes the LeadType records with the given ids.","operationId":"LeadTypes.batch_delete","summary":"LeadTypes.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadTypes/batch-modify":{"post":{"description":"Creates or updates LeadType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"LeadTypes.batch_create_or_update","summary":"LeadTypes.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchLeadTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/LeadTypes/batch-restore":{"post":{"description":"Restores the deleted LeadType records with the given ids.","operationId":"LeadTypes.batch_restore","summary":"LeadTypes.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MasterRights/{id}":{"get":{"description":"Returns the MasterRight record with the given id.","operationId":"MasterRights.get","summary":"MasterRights.get","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the MasterRight record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The MasterRight record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MasterRight"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the MasterRight record with the given id.","operationId":"MasterRights.delete","summary":"MasterRights.delete","tags":["MasterRight"],"parameters":[{"name":"id","in":"path","description":"Id of the MasterRight record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the MasterRight record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the MasterRight record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"MasterRights.update","summary":"MasterRights.update","tags":["MasterRight"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateMasterRightInput"}}}},"responses":{"200":{"description":"The changed MasterRight record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MasterRight"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MasterRights":{"get":{"description":"Returns a page of MasterRight records, optionally filtered, sorted and limited to selected fields.","operationId":"MasterRights.list","summary":"MasterRights.list","tags":["MasterRight"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of MasterRight records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/MasterRight"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a MasterRight record.","operationId":"MasterRights.create","summary":"MasterRights.create","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createMasterRightInput"}}}},"responses":{"201":{"description":"The created MasterRight record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MasterRight"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MasterRights/batch-delete":{"post":{"description":"Deletes the MasterRight records with the given ids.","operationId":"MasterRights.batch_delete","summary":"MasterRights.batch_delete","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MasterRights/batch-modify":{"post":{"description":"Creates or updates MasterRight records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"MasterRights.batch_create_or_update","summary":"MasterRights.batch_create_or_update","tags":["MasterRight"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchMasterRightInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MasterRights/batch-restore":{"post":{"description":"Restores the deleted MasterRight records with the given ids.","operationId":"MasterRights.batch_restore","summary":"MasterRights.batch_restore","tags":["MasterRight"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Medias/{id}":{"get":{"description":"Returns the Media record with the given id.","operationId":"Medias.get","summary":"Medias.get","tags":["Media"],"parameters":[{"name":"id","in":"path","description":"Id of the Media record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Media record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Media"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Media record with the given id.","operationId":"Medias.delete","summary":"Medias.delete","tags":["Media"],"parameters":[{"name":"id","in":"path","description":"Id of the Media record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Media record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Media record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Medias.update","summary":"Medias.update","tags":["Media"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateMediaInput"}}}},"responses":{"200":{"description":"The changed Media record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Media"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Medias":{"get":{"description":"Returns a page of Media records, optionally filtered, sorted and limited to selected fields.","operationId":"Medias.list","summary":"Medias.list","tags":["Media"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Media records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Media"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Media record.","operationId":"Medias.create","summary":"Medias.create","tags":["Media"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createMediaInput"}}}},"responses":{"201":{"description":"The created Media record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Media"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Medias/batch-delete":{"post":{"description":"Deletes the Media records with the given ids.","operationId":"Medias.batch_delete","summary":"Medias.batch_delete","tags":["Media"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Medias/batch-modify":{"post":{"description":"Creates or updates Media records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Medias.batch_create_or_update","summary":"Medias.batch_create_or_update","tags":["Media"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchMediaInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Medias/batch-restore":{"post":{"description":"Restores the deleted Media records with the given ids.","operationId":"Medias.batch_restore","summary":"Medias.batch_restore","tags":["Media"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Memos/{id}":{"get":{"description":"Returns the Memo record with the given id.","operationId":"Memos.get","summary":"Memos.get","tags":["Memo"],"parameters":[{"name":"id","in":"path","description":"Id of the Memo record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Memo record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Memo"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Memo record with the given id.","operationId":"Memos.delete","summary":"Memos.delete","tags":["Memo"],"parameters":[{"name":"id","in":"path","description":"Id of the Memo record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Memo record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Memo record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Memos.update","summary":"Memos.update","tags":["Memo"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateMemoInput"}}}},"responses":{"200":{"description":"The changed Memo record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Memo"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Memos":{"get":{"description":"Returns a page of Memo records, optionally filtered, sorted and limited to selected fields.","operationId":"Memos.list","summary":"Memos.list","tags":["Memo"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Memo records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Memo"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Memo record.","operationId":"Memos.create","summary":"Memos.create","tags":["Memo"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createMemoInput"}}}},"responses":{"201":{"description":"The created Memo record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Memo"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Memos/batch-delete":{"post":{"description":"Deletes the Memo records with the given ids.","operationId":"Memos.batch_delete","summary":"Memos.batch_delete","tags":["Memo"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Memos/batch-modify":{"post":{"description":"Creates or updates Memo records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Memos.batch_create_or_update","summary":"Memos.batch_create_or_update","tags":["Memo"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchMemoInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Memos/batch-restore":{"post":{"description":"Restores the deleted Memo records with the given ids.","operationId":"Memos.batch_restore","summary":"Memos.batch_restore","tags":["Memo"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MemoComments/{id}":{"get":{"description":"Returns the MemoComment record with the given id.","operationId":"MemoComments.get","summary":"MemoComments.get","tags":["Memo"],"parameters":[{"name":"id","in":"path","description":"Id of the MemoComment record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The MemoComment record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MemoComment"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the MemoComment record with the given id.","operationId":"MemoComments.delete","summary":"MemoComments.delete","tags":["Memo"],"parameters":[{"name":"id","in":"path","description":"Id of the MemoComment record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the MemoComment record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the MemoComment record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"MemoComments.update","summary":"MemoComments.update","tags":["Memo"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateMemoCommentInput"}}}},"responses":{"200":{"description":"The changed MemoComment record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MemoComment"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MemoComments":{"get":{"description":"Returns a page of MemoComment records, optionally filtered, sorted and limited to selected fields.","operationId":"MemoComments.list","summary":"MemoComments.list","tags":["Memo"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of MemoComment records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/MemoComment"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a MemoComment record.","operationId":"MemoComments.create","summary":"MemoComments.create","tags":["Memo"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createMemoCommentInput"}}}},"responses":{"201":{"description":"The created MemoComment record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MemoComment"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MemoComments/batch-delete":{"post":{"description":"Deletes the MemoComment records with the given ids.","operationId":"MemoComments.batch_delete","summary":"MemoComments.batch_delete","tags":["Memo"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MemoComments/batch-modify":{"post":{"description":"Creates or updates MemoComment records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"MemoComments.batch_create_or_update","summary":"MemoComments.batch_create_or_update","tags":["Memo"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchMemoCommentInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MemoComments/batch-restore":{"post":{"description":"Restores the deleted MemoComment records with the given ids.","operationId":"MemoComments.batch_restore","summary":"MemoComments.batch_restore","tags":["Memo"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageRelations/{id}":{"get":{"description":"Returns the MessageRelation record with the given id.","operationId":"MessageRelations.get","summary":"MessageRelations.get","tags":["Message"],"parameters":[{"name":"id","in":"path","description":"Id of the MessageRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The MessageRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MessageRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the MessageRelation record with the given id.","operationId":"MessageRelations.delete","summary":"MessageRelations.delete","tags":["Message"],"parameters":[{"name":"id","in":"path","description":"Id of the MessageRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the MessageRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the MessageRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"MessageRelations.update","summary":"MessageRelations.update","tags":["Message"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateMessageRelationInput"}}}},"responses":{"200":{"description":"The changed MessageRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MessageRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageRelations":{"get":{"description":"Returns a page of MessageRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"MessageRelations.list","summary":"MessageRelations.list","tags":["Message"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of MessageRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/MessageRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a MessageRelation record.","operationId":"MessageRelations.create","summary":"MessageRelations.create","tags":["Message"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createMessageRelationInput"}}}},"responses":{"201":{"description":"The created MessageRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MessageRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageRelations/batch-delete":{"post":{"description":"Deletes the MessageRelation records with the given ids.","operationId":"MessageRelations.batch_delete","summary":"MessageRelations.batch_delete","tags":["Message"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageRelations/batch-modify":{"post":{"description":"Creates or updates MessageRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"MessageRelations.batch_create_or_update","summary":"MessageRelations.batch_create_or_update","tags":["Message"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchMessageRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageRelations/batch-restore":{"post":{"description":"Restores the deleted MessageRelation records with the given ids.","operationId":"MessageRelations.batch_restore","summary":"MessageRelations.batch_restore","tags":["Message"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageSharingClientRelations/{id}":{"get":{"description":"Returns the MessageSharingClientRelation record with the given id.","operationId":"MessageSharingClientRelations.get","summary":"MessageSharingClientRelations.get","tags":["Message"],"parameters":[{"name":"id","in":"path","description":"Id of the MessageSharingClientRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The MessageSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MessageSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the MessageSharingClientRelation record with the given id.","operationId":"MessageSharingClientRelations.delete","summary":"MessageSharingClientRelations.delete","tags":["Message"],"parameters":[{"name":"id","in":"path","description":"Id of the MessageSharingClientRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the MessageSharingClientRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the MessageSharingClientRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"MessageSharingClientRelations.update","summary":"MessageSharingClientRelations.update","tags":["Message"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateMessageSharingClientRelationInput"}}}},"responses":{"200":{"description":"The changed MessageSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MessageSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageSharingClientRelations":{"get":{"description":"Returns a page of MessageSharingClientRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"MessageSharingClientRelations.list","summary":"MessageSharingClientRelations.list","tags":["Message"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of MessageSharingClientRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/MessageSharingClientRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a MessageSharingClientRelation record.","operationId":"MessageSharingClientRelations.create","summary":"MessageSharingClientRelations.create","tags":["Message"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createMessageSharingClientRelationInput"}}}},"responses":{"201":{"description":"The created MessageSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MessageSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageSharingClientRelations/batch-delete":{"post":{"description":"Deletes the MessageSharingClientRelation records with the given ids.","operationId":"MessageSharingClientRelations.batch_delete","summary":"MessageSharingClientRelations.batch_delete","tags":["Message"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageSharingClientRelations/batch-modify":{"post":{"description":"Creates or updates MessageSharingClientRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"MessageSharingClientRelations.batch_create_or_update","summary":"MessageSharingClientRelations.batch_create_or_update","tags":["Message"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchMessageSharingClientRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageSharingClientRelations/batch-restore":{"post":{"description":"Restores the deleted MessageSharingClientRelation records with the given ids.","operationId":"MessageSharingClientRelations.batch_restore","summary":"MessageSharingClientRelations.batch_restore","tags":["Message"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageSharingSalesUnitRelations/{id}":{"get":{"description":"Returns the MessageSharingSalesUnitRelation record with the given id.","operationId":"MessageSharingSalesUnitRelations.get","summary":"MessageSharingSalesUnitRelations.get","tags":["Message"],"parameters":[{"name":"id","in":"path","description":"Id of the MessageSharingSalesUnitRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The MessageSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MessageSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the MessageSharingSalesUnitRelation record with the given id.","operationId":"MessageSharingSalesUnitRelations.delete","summary":"MessageSharingSalesUnitRelations.delete","tags":["Message"],"parameters":[{"name":"id","in":"path","description":"Id of the MessageSharingSalesUnitRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the MessageSharingSalesUnitRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the MessageSharingSalesUnitRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"MessageSharingSalesUnitRelations.update","summary":"MessageSharingSalesUnitRelations.update","tags":["Message"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateMessageSharingSalesUnitRelationInput"}}}},"responses":{"200":{"description":"The changed MessageSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MessageSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageSharingSalesUnitRelations":{"get":{"description":"Returns a page of MessageSharingSalesUnitRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"MessageSharingSalesUnitRelations.list","summary":"MessageSharingSalesUnitRelations.list","tags":["Message"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of MessageSharingSalesUnitRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/MessageSharingSalesUnitRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a MessageSharingSalesUnitRelation record.","operationId":"MessageSharingSalesUnitRelations.create","summary":"MessageSharingSalesUnitRelations.create","tags":["Message"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createMessageSharingSalesUnitRelationInput"}}}},"responses":{"201":{"description":"The created MessageSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/MessageSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageSharingSalesUnitRelations/batch-delete":{"post":{"description":"Deletes the MessageSharingSalesUnitRelation records with the given ids.","operationId":"MessageSharingSalesUnitRelations.batch_delete","summary":"MessageSharingSalesUnitRelations.batch_delete","tags":["Message"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageSharingSalesUnitRelations/batch-modify":{"post":{"description":"Creates or updates MessageSharingSalesUnitRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"MessageSharingSalesUnitRelations.batch_create_or_update","summary":"MessageSharingSalesUnitRelations.batch_create_or_update","tags":["Message"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchMessageSharingSalesUnitRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/MessageSharingSalesUnitRelations/batch-restore":{"post":{"description":"Restores the deleted MessageSharingSalesUnitRelation records with the given ids.","operationId":"MessageSharingSalesUnitRelations.batch_restore","summary":"MessageSharingSalesUnitRelations.batch_restore","tags":["Message"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Notes/{id}":{"get":{"description":"Returns the Note record with the given id.","operationId":"Notes.get","summary":"Notes.get","tags":["Note"],"parameters":[{"name":"id","in":"path","description":"Id of the Note record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Note record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Note"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Note record with the given id.","operationId":"Notes.delete","summary":"Notes.delete","tags":["Note"],"parameters":[{"name":"id","in":"path","description":"Id of the Note record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Note record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Note record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Notes.update","summary":"Notes.update","tags":["Note"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateNoteInput"}}}},"responses":{"200":{"description":"The changed Note record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Note"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Notes":{"get":{"description":"Returns a page of Note records, optionally filtered, sorted and limited to selected fields.","operationId":"Notes.list","summary":"Notes.list","tags":["Note"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Note records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Note"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Note record.","operationId":"Notes.create","summary":"Notes.create","tags":["Note"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createNoteInput"}}}},"responses":{"201":{"description":"The created Note record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Note"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Notes/batch-delete":{"post":{"description":"Deletes the Note records with the given ids.","operationId":"Notes.batch_delete","summary":"Notes.batch_delete","tags":["Note"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Notes/batch-modify":{"post":{"description":"Creates or updates Note records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Notes.batch_create_or_update","summary":"Notes.batch_create_or_update","tags":["Note"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchNoteInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Notes/batch-restore":{"post":{"description":"Restores the deleted Note records with the given ids.","operationId":"Notes.batch_restore","summary":"Notes.batch_restore","tags":["Note"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineForms/{id}":{"get":{"description":"Returns the OnlineForm record with the given id.","operationId":"OnlineForms.get","summary":"OnlineForms.get","tags":["Online Form"],"parameters":[{"name":"id","in":"path","description":"Id of the OnlineForm record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OnlineForm record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineForm"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OnlineForm record with the given id.","operationId":"OnlineForms.delete","summary":"OnlineForms.delete","tags":["Online Form"],"parameters":[{"name":"id","in":"path","description":"Id of the OnlineForm record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OnlineForm record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OnlineForm record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OnlineForms.update","summary":"OnlineForms.update","tags":["Online Form"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOnlineFormInput"}}}},"responses":{"200":{"description":"The changed OnlineForm record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineForm"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineForms":{"get":{"description":"Returns a page of OnlineForm records, optionally filtered, sorted and limited to selected fields.","operationId":"OnlineForms.list","summary":"OnlineForms.list","tags":["Online Form"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OnlineForm records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OnlineForm"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OnlineForm record.","operationId":"OnlineForms.create","summary":"OnlineForms.create","tags":["Online Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOnlineFormInput"}}}},"responses":{"201":{"description":"The created OnlineForm record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineForm"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineForms/batch-delete":{"post":{"description":"Deletes the OnlineForm records with the given ids.","operationId":"OnlineForms.batch_delete","summary":"OnlineForms.batch_delete","tags":["Online Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineForms/batch-modify":{"post":{"description":"Creates or updates OnlineForm records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OnlineForms.batch_create_or_update","summary":"OnlineForms.batch_create_or_update","tags":["Online Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOnlineFormInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineForms/batch-restore":{"post":{"description":"Restores the deleted OnlineForm records with the given ids.","operationId":"OnlineForms.batch_restore","summary":"OnlineForms.batch_restore","tags":["Online Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormActivityLogLines/{id}":{"get":{"description":"Returns the OnlineFormActivityLogLine record with the given id.","operationId":"OnlineFormActivityLogLines.get","summary":"OnlineFormActivityLogLines.get","tags":["Online Form"],"parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormActivityLogLine record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OnlineFormActivityLogLine record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormActivityLogLine"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OnlineFormActivityLogLine record with the given id.","operationId":"OnlineFormActivityLogLines.delete","summary":"OnlineFormActivityLogLines.delete","tags":["Online Form"],"parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormActivityLogLine record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OnlineFormActivityLogLine record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormActivityLogLine record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OnlineFormActivityLogLines.update","summary":"OnlineFormActivityLogLines.update","tags":["Online Form"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOnlineFormActivityLogLineInput"}}}},"responses":{"200":{"description":"The changed OnlineFormActivityLogLine record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormActivityLogLine"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormActivityLogLines":{"get":{"description":"Returns a page of OnlineFormActivityLogLine records, optionally filtered, sorted and limited to selected fields.","operationId":"OnlineFormActivityLogLines.list","summary":"OnlineFormActivityLogLines.list","tags":["Online Form"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OnlineFormActivityLogLine records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OnlineFormActivityLogLine"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OnlineFormActivityLogLine record.","operationId":"OnlineFormActivityLogLines.create","summary":"OnlineFormActivityLogLines.create","tags":["Online Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOnlineFormActivityLogLineInput"}}}},"responses":{"201":{"description":"The created OnlineFormActivityLogLine record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormActivityLogLine"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormActivityLogLines/batch-delete":{"post":{"description":"Deletes the OnlineFormActivityLogLine records with the given ids.","operationId":"OnlineFormActivityLogLines.batch_delete","summary":"OnlineFormActivityLogLines.batch_delete","tags":["Online Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormActivityLogLines/batch-modify":{"post":{"description":"Creates or updates OnlineFormActivityLogLine records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OnlineFormActivityLogLines.batch_create_or_update","summary":"OnlineFormActivityLogLines.batch_create_or_update","tags":["Online Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOnlineFormActivityLogLineInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormActivityLogLines/batch-restore":{"post":{"description":"Restores the deleted OnlineFormActivityLogLine records with the given ids.","operationId":"OnlineFormActivityLogLines.batch_restore","summary":"OnlineFormActivityLogLines.batch_restore","tags":["Online Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormDataExRelations/{id}":{"get":{"description":"Returns the OnlineFormDataExRelation record with the given id.","operationId":"OnlineFormDataExRelations.get","summary":"OnlineFormDataExRelations.get","tags":["Online Form"],"parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormDataExRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OnlineFormDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OnlineFormDataExRelation record with the given id.","operationId":"OnlineFormDataExRelations.delete","summary":"OnlineFormDataExRelations.delete","tags":["Online Form"],"parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormDataExRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OnlineFormDataExRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormDataExRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OnlineFormDataExRelations.update","summary":"OnlineFormDataExRelations.update","tags":["Online Form"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOnlineFormDataExRelationInput"}}}},"responses":{"200":{"description":"The changed OnlineFormDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormDataExRelations":{"get":{"description":"Returns a page of OnlineFormDataExRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"OnlineFormDataExRelations.list","summary":"OnlineFormDataExRelations.list","tags":["Online Form"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OnlineFormDataExRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OnlineFormDataExRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OnlineFormDataExRelation record.","operationId":"OnlineFormDataExRelations.create","summary":"OnlineFormDataExRelations.create","tags":["Online Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOnlineFormDataExRelationInput"}}}},"responses":{"201":{"description":"The created OnlineFormDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormDataExRelations/batch-delete":{"post":{"description":"Deletes the OnlineFormDataExRelation records with the given ids.","operationId":"OnlineFormDataExRelations.batch_delete","summary":"OnlineFormDataExRelations.batch_delete","tags":["Online Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormDataExRelations/batch-modify":{"post":{"description":"Creates or updates OnlineFormDataExRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OnlineFormDataExRelations.batch_create_or_update","summary":"OnlineFormDataExRelations.batch_create_or_update","tags":["Online Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOnlineFormDataExRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormDataExRelations/batch-restore":{"post":{"description":"Restores the deleted OnlineFormDataExRelation records with the given ids.","operationId":"OnlineFormDataExRelations.batch_restore","summary":"OnlineFormDataExRelations.batch_restore","tags":["Online Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormRelations/{id}":{"get":{"description":"Returns the OnlineFormRelation record with the given id.","operationId":"OnlineFormRelations.get","summary":"OnlineFormRelations.get","tags":["Online Form"],"parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OnlineFormRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OnlineFormRelation record with the given id.","operationId":"OnlineFormRelations.delete","summary":"OnlineFormRelations.delete","tags":["Online Form"],"parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OnlineFormRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OnlineFormRelations.update","summary":"OnlineFormRelations.update","tags":["Online Form"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOnlineFormRelationInput"}}}},"responses":{"200":{"description":"The changed OnlineFormRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormRelations":{"get":{"description":"Returns a page of OnlineFormRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"OnlineFormRelations.list","summary":"OnlineFormRelations.list","tags":["Online Form"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OnlineFormRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OnlineFormRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OnlineFormRelation record.","operationId":"OnlineFormRelations.create","summary":"OnlineFormRelations.create","tags":["Online Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOnlineFormRelationInput"}}}},"responses":{"201":{"description":"The created OnlineFormRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormRelations/batch-delete":{"post":{"description":"Deletes the OnlineFormRelation records with the given ids.","operationId":"OnlineFormRelations.batch_delete","summary":"OnlineFormRelations.batch_delete","tags":["Online Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormRelations/batch-modify":{"post":{"description":"Creates or updates OnlineFormRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OnlineFormRelations.batch_create_or_update","summary":"OnlineFormRelations.batch_create_or_update","tags":["Online Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOnlineFormRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormRelations/batch-restore":{"post":{"description":"Restores the deleted OnlineFormRelation records with the given ids.","operationId":"OnlineFormRelations.batch_restore","summary":"OnlineFormRelations.batch_restore","tags":["Online Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormStyles/{id}":{"get":{"description":"Returns the OnlineFormStyle record with the given id.","operationId":"OnlineFormStyles.get","summary":"OnlineFormStyles.get","tags":["Online Form"],"parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormStyle record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OnlineFormStyle record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormStyle"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OnlineFormStyle record with the given id.","operationId":"OnlineFormStyles.delete","summary":"OnlineFormStyles.delete","tags":["Online Form"],"parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormStyle record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OnlineFormStyle record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormStyle record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OnlineFormStyles.update","summary":"OnlineFormStyles.update","tags":["Online Form"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOnlineFormStyleInput"}}}},"responses":{"200":{"description":"The changed OnlineFormStyle record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormStyle"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormStyles":{"get":{"description":"Returns a page of OnlineFormStyle records, optionally filtered, sorted and limited to selected fields.","operationId":"OnlineFormStyles.list","summary":"OnlineFormStyles.list","tags":["Online Form"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OnlineFormStyle records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OnlineFormStyle"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OnlineFormStyle record.","operationId":"OnlineFormStyles.create","summary":"OnlineFormStyles.create","tags":["Online Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOnlineFormStyleInput"}}}},"responses":{"201":{"description":"The created OnlineFormStyle record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormStyle"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormStyles/batch-delete":{"post":{"description":"Deletes the OnlineFormStyle records with the given ids.","operationId":"OnlineFormStyles.batch_delete","summary":"OnlineFormStyles.batch_delete","tags":["Online Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormStyles/batch-modify":{"post":{"description":"Creates or updates OnlineFormStyle records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OnlineFormStyles.batch_create_or_update","summary":"OnlineFormStyles.batch_create_or_update","tags":["Online Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOnlineFormStyleInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormStyles/batch-restore":{"post":{"description":"Restores the deleted OnlineFormStyle records with the given ids.","operationId":"OnlineFormStyles.batch_restore","summary":"OnlineFormStyles.batch_restore","tags":["Online Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormTypes/{id}":{"get":{"description":"Returns the OnlineFormType record with the given id.","operationId":"OnlineFormTypes.get","summary":"OnlineFormTypes.get","tags":["Online Form"],"parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OnlineFormType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OnlineFormType record with the given id.","operationId":"OnlineFormTypes.delete","summary":"OnlineFormTypes.delete","tags":["Online Form"],"parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OnlineFormType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OnlineFormTypes.update","summary":"OnlineFormTypes.update","tags":["Online Form"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOnlineFormTypeInput"}}}},"responses":{"200":{"description":"The changed OnlineFormType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormTypes":{"get":{"description":"Returns a page of OnlineFormType records, optionally filtered, sorted and limited to selected fields.","operationId":"OnlineFormTypes.list","summary":"OnlineFormTypes.list","tags":["Online Form"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OnlineFormType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OnlineFormType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OnlineFormType record.","operationId":"OnlineFormTypes.create","summary":"OnlineFormTypes.create","tags":["Online Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOnlineFormTypeInput"}}}},"responses":{"201":{"description":"The created OnlineFormType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormTypes/batch-delete":{"post":{"description":"Deletes the OnlineFormType records with the given ids.","operationId":"OnlineFormTypes.batch_delete","summary":"OnlineFormTypes.batch_delete","tags":["Online Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormTypes/batch-modify":{"post":{"description":"Creates or updates OnlineFormType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OnlineFormTypes.batch_create_or_update","summary":"OnlineFormTypes.batch_create_or_update","tags":["Online Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOnlineFormTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormTypes/batch-restore":{"post":{"description":"Restores the deleted OnlineFormType records with the given ids.","operationId":"OnlineFormTypes.batch_restore","summary":"OnlineFormTypes.batch_restore","tags":["Online Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormTypeEmailRelations/{id}":{"get":{"description":"Returns the OnlineFormTypeEmailRelation record with the given id.","operationId":"OnlineFormTypeEmailRelations.get","summary":"OnlineFormTypeEmailRelations.get","tags":["Online Form"],"parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormTypeEmailRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OnlineFormTypeEmailRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormTypeEmailRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OnlineFormTypeEmailRelation record with the given id.","operationId":"OnlineFormTypeEmailRelations.delete","summary":"OnlineFormTypeEmailRelations.delete","tags":["Online Form"],"parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormTypeEmailRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OnlineFormTypeEmailRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OnlineFormTypeEmailRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OnlineFormTypeEmailRelations.update","summary":"OnlineFormTypeEmailRelations.update","tags":["Online Form"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOnlineFormTypeEmailRelationInput"}}}},"responses":{"200":{"description":"The changed OnlineFormTypeEmailRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormTypeEmailRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormTypeEmailRelations":{"get":{"description":"Returns a page of OnlineFormTypeEmailRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"OnlineFormTypeEmailRelations.list","summary":"OnlineFormTypeEmailRelations.list","tags":["Online Form"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OnlineFormTypeEmailRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OnlineFormTypeEmailRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OnlineFormTypeEmailRelation record.","operationId":"OnlineFormTypeEmailRelations.create","summary":"OnlineFormTypeEmailRelations.create","tags":["Online Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOnlineFormTypeEmailRelationInput"}}}},"responses":{"201":{"description":"The created OnlineFormTypeEmailRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OnlineFormTypeEmailRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormTypeEmailRelations/batch-delete":{"post":{"description":"Deletes the OnlineFormTypeEmailRelation records with the given ids.","operationId":"OnlineFormTypeEmailRelations.batch_delete","summary":"OnlineFormTypeEmailRelations.batch_delete","tags":["Online Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormTypeEmailRelations/batch-modify":{"post":{"description":"Creates or updates OnlineFormTypeEmailRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OnlineFormTypeEmailRelations.batch_create_or_update","summary":"OnlineFormTypeEmailRelations.batch_create_or_update","tags":["Online Form"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOnlineFormTypeEmailRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OnlineFormTypeEmailRelations/batch-restore":{"post":{"description":"Restores the deleted OnlineFormTypeEmailRelation records with the given ids.","operationId":"OnlineFormTypeEmailRelations.batch_restore","summary":"OnlineFormTypeEmailRelations.batch_restore","tags":["Online Form"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Opportunities/{id}":{"get":{"description":"Returns one opportunity by id.","operationId":"Opportunities.get","summary":"Get an opportunity","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the Opportunity record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Opportunity record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Opportunity"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Soft-deletes one opportunity and answers with its id.","operationId":"Opportunities.delete","summary":"Delete an opportunity","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the Opportunity record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes the fields you send and leaves the rest as they are. Changing `step_id`, `owner_id` or `is_archived` here skips the extras of the GraphQL move, change-owner and archive actions.","parameters":[{"name":"id","in":"path","description":"Id of the Opportunity record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Opportunities.update","summary":"Update an opportunity","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOpportunityInput"}}}},"responses":{"200":{"description":"The changed Opportunity record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Opportunity"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Opportunities":{"get":{"description":"Returns the opportunities the API application can read, one page at a time.","operationId":"Opportunities.list","summary":"List opportunities","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Opportunity records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Opportunity"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates one opportunity and answers 201 with the record. `name`, `owner_id`, `step_id`, `closing_date`, `value` (with `currency_id`) and `account_relations` are required.","operationId":"Opportunities.create","summary":"Create an opportunity","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOpportunityInput"},"example":{"name":"Northwind Analytics - CRM rollout","owner_id":"37000000-0000-4000-a000-000000000001","step_id":"d4000000-0000-4000-a000-000000000001","closing_date":"2026-12-15","value":{"base_value":24000,"currency_id":"be000000-0000-4000-a000-000000000001"},"account_relations":[{"account_id":"1d000000-0000-4000-a000-000000000001","is_primary":true}]}}}},"responses":{"201":{"description":"The created Opportunity record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Opportunity"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Opportunities/batch-delete":{"post":{"description":"Soft-deletes the opportunities whose ids are in the body, a JSON array.","operationId":"Opportunities.batch_delete","summary":"Delete opportunities in a batch","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Opportunities/batch-modify":{"post":{"description":"An item with an `id` updates that opportunity; an item without one creates an opportunity. By default one invalid item fails the whole call with HTTP 422.","operationId":"Opportunities.batch_create_or_update","summary":"Create or update opportunities in a batch","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOpportunityInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Opportunities/batch-restore":{"post":{"description":"Restores the soft-deleted opportunities whose ids are in the body, a JSON array.","operationId":"Opportunities.batch_restore","summary":"Restore deleted opportunities","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpportunityTypes/{id}":{"get":{"description":"Returns the OpportunityType record with the given id.","operationId":"OpportunityTypes.get","summary":"OpportunityTypes.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpportunityType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OpportunityType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpportunityType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OpportunityType record with the given id.","operationId":"OpportunityTypes.delete","summary":"OpportunityTypes.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpportunityType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OpportunityType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OpportunityType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OpportunityTypes.update","summary":"OpportunityTypes.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOpportunityTypeInput"}}}},"responses":{"200":{"description":"The changed OpportunityType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpportunityType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpportunityTypes":{"get":{"description":"Returns a page of OpportunityType records, optionally filtered, sorted and limited to selected fields.","operationId":"OpportunityTypes.list","summary":"OpportunityTypes.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OpportunityType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OpportunityType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OpportunityType record.","operationId":"OpportunityTypes.create","summary":"OpportunityTypes.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOpportunityTypeInput"}}}},"responses":{"201":{"description":"The created OpportunityType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpportunityType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpportunityTypes/batch-delete":{"post":{"description":"Deletes the OpportunityType records with the given ids.","operationId":"OpportunityTypes.batch_delete","summary":"OpportunityTypes.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpportunityTypes/batch-modify":{"post":{"description":"Creates or updates OpportunityType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OpportunityTypes.batch_create_or_update","summary":"OpportunityTypes.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOpportunityTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpportunityTypes/batch-restore":{"post":{"description":"Restores the deleted OpportunityType records with the given ids.","operationId":"OpportunityTypes.batch_restore","summary":"OpportunityTypes.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelations/{id}":{"get":{"description":"Returns the OpptyProductRelation record with the given id.","operationId":"OpptyProductRelations.get","summary":"OpptyProductRelations.get","tags":["Product Line Items"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OpptyProductRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OpptyProductRelation record with the given id.","operationId":"OpptyProductRelations.delete","summary":"OpptyProductRelations.delete","tags":["Product Line Items"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OpptyProductRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OpptyProductRelations.update","summary":"OpptyProductRelations.update","tags":["Product Line Items"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOpptyProductRelationInput"}}}},"responses":{"200":{"description":"The changed OpptyProductRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelations":{"get":{"description":"Returns a page of OpptyProductRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"OpptyProductRelations.list","summary":"OpptyProductRelations.list","tags":["Product Line Items"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OpptyProductRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OpptyProductRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OpptyProductRelation record.","operationId":"OpptyProductRelations.create","summary":"OpptyProductRelations.create","tags":["Product Line Items"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOpptyProductRelationInput"}}}},"responses":{"201":{"description":"The created OpptyProductRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelations/batch-delete":{"post":{"description":"Deletes the OpptyProductRelation records with the given ids.","operationId":"OpptyProductRelations.batch_delete","summary":"OpptyProductRelations.batch_delete","tags":["Product Line Items"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelations/batch-modify":{"post":{"description":"Creates or updates OpptyProductRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OpptyProductRelations.batch_create_or_update","summary":"OpptyProductRelations.batch_create_or_update","tags":["Product Line Items"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOpptyProductRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelations/batch-restore":{"post":{"description":"Restores the deleted OpptyProductRelation records with the given ids.","operationId":"OpptyProductRelations.batch_restore","summary":"OpptyProductRelations.batch_restore","tags":["Product Line Items"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationDataExRelations/{id}":{"get":{"description":"Returns the OpptyProductRelationDataExRelation record with the given id.","operationId":"OpptyProductRelationDataExRelations.get","summary":"OpptyProductRelationDataExRelations.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelationDataExRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OpptyProductRelationDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelationDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OpptyProductRelationDataExRelation record with the given id.","operationId":"OpptyProductRelationDataExRelations.delete","summary":"OpptyProductRelationDataExRelations.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelationDataExRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OpptyProductRelationDataExRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelationDataExRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OpptyProductRelationDataExRelations.update","summary":"OpptyProductRelationDataExRelations.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOpptyProductRelationDataExRelationInput"}}}},"responses":{"200":{"description":"The changed OpptyProductRelationDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelationDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationDataExRelations":{"get":{"description":"Returns a page of OpptyProductRelationDataExRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"OpptyProductRelationDataExRelations.list","summary":"OpptyProductRelationDataExRelations.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OpptyProductRelationDataExRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OpptyProductRelationDataExRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OpptyProductRelationDataExRelation record.","operationId":"OpptyProductRelationDataExRelations.create","summary":"OpptyProductRelationDataExRelations.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOpptyProductRelationDataExRelationInput"}}}},"responses":{"201":{"description":"The created OpptyProductRelationDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelationDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationDataExRelations/batch-delete":{"post":{"description":"Deletes the OpptyProductRelationDataExRelation records with the given ids.","operationId":"OpptyProductRelationDataExRelations.batch_delete","summary":"OpptyProductRelationDataExRelations.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationDataExRelations/batch-modify":{"post":{"description":"Creates or updates OpptyProductRelationDataExRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OpptyProductRelationDataExRelations.batch_create_or_update","summary":"OpptyProductRelationDataExRelations.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOpptyProductRelationDataExRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationDataExRelations/batch-restore":{"post":{"description":"Restores the deleted OpptyProductRelationDataExRelation records with the given ids.","operationId":"OpptyProductRelationDataExRelations.batch_restore","summary":"OpptyProductRelationDataExRelations.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationRevenueSchedules/{id}":{"get":{"description":"Returns the OpptyProductRelationRevenueSchedule record with the given id.","operationId":"OpptyProductRelationRevenueSchedules.get","summary":"OpptyProductRelationRevenueSchedules.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelationRevenueSchedule record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OpptyProductRelationRevenueSchedule record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelationRevenueSchedule"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OpptyProductRelationRevenueSchedule record with the given id.","operationId":"OpptyProductRelationRevenueSchedules.delete","summary":"OpptyProductRelationRevenueSchedules.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelationRevenueSchedule record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OpptyProductRelationRevenueSchedule record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelationRevenueSchedule record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OpptyProductRelationRevenueSchedules.update","summary":"OpptyProductRelationRevenueSchedules.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOpptyProductRelationRevenueScheduleInput"}}}},"responses":{"200":{"description":"The changed OpptyProductRelationRevenueSchedule record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelationRevenueSchedule"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationRevenueSchedules":{"get":{"description":"Returns a page of OpptyProductRelationRevenueSchedule records, optionally filtered, sorted and limited to selected fields.","operationId":"OpptyProductRelationRevenueSchedules.list","summary":"OpptyProductRelationRevenueSchedules.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OpptyProductRelationRevenueSchedule records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OpptyProductRelationRevenueSchedule"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OpptyProductRelationRevenueSchedule record.","operationId":"OpptyProductRelationRevenueSchedules.create","summary":"OpptyProductRelationRevenueSchedules.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOpptyProductRelationRevenueScheduleInput"}}}},"responses":{"201":{"description":"The created OpptyProductRelationRevenueSchedule record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelationRevenueSchedule"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationRevenueSchedules/batch-delete":{"post":{"description":"Deletes the OpptyProductRelationRevenueSchedule records with the given ids.","operationId":"OpptyProductRelationRevenueSchedules.batch_delete","summary":"OpptyProductRelationRevenueSchedules.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationRevenueSchedules/batch-modify":{"post":{"description":"Creates or updates OpptyProductRelationRevenueSchedule records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OpptyProductRelationRevenueSchedules.batch_create_or_update","summary":"OpptyProductRelationRevenueSchedules.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOpptyProductRelationRevenueScheduleInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationRevenueSchedules/batch-restore":{"post":{"description":"Restores the deleted OpptyProductRelationRevenueSchedule records with the given ids.","operationId":"OpptyProductRelationRevenueSchedules.batch_restore","summary":"OpptyProductRelationRevenueSchedules.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationRevenueSchedulePeriods/{id}":{"get":{"description":"Returns the OpptyProductRelationRevenueSchedulePeriod record with the given id.","operationId":"OpptyProductRelationRevenueSchedulePeriods.get","summary":"OpptyProductRelationRevenueSchedulePeriods.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelationRevenueSchedulePeriod record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OpptyProductRelationRevenueSchedulePeriod record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelationRevenueSchedulePeriod"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OpptyProductRelationRevenueSchedulePeriod record with the given id.","operationId":"OpptyProductRelationRevenueSchedulePeriods.delete","summary":"OpptyProductRelationRevenueSchedulePeriods.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelationRevenueSchedulePeriod record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OpptyProductRelationRevenueSchedulePeriod record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelationRevenueSchedulePeriod record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OpptyProductRelationRevenueSchedulePeriods.update","summary":"OpptyProductRelationRevenueSchedulePeriods.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOpptyProductRelationRevenueSchedulePeriodInput"}}}},"responses":{"200":{"description":"The changed OpptyProductRelationRevenueSchedulePeriod record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelationRevenueSchedulePeriod"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationRevenueSchedulePeriods":{"get":{"description":"Returns a page of OpptyProductRelationRevenueSchedulePeriod records, optionally filtered, sorted and limited to selected fields.","operationId":"OpptyProductRelationRevenueSchedulePeriods.list","summary":"OpptyProductRelationRevenueSchedulePeriods.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OpptyProductRelationRevenueSchedulePeriod records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OpptyProductRelationRevenueSchedulePeriod"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OpptyProductRelationRevenueSchedulePeriod record.","operationId":"OpptyProductRelationRevenueSchedulePeriods.create","summary":"OpptyProductRelationRevenueSchedulePeriods.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOpptyProductRelationRevenueSchedulePeriodInput"}}}},"responses":{"201":{"description":"The created OpptyProductRelationRevenueSchedulePeriod record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelationRevenueSchedulePeriod"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationRevenueSchedulePeriods/batch-delete":{"post":{"description":"Deletes the OpptyProductRelationRevenueSchedulePeriod records with the given ids.","operationId":"OpptyProductRelationRevenueSchedulePeriods.batch_delete","summary":"OpptyProductRelationRevenueSchedulePeriods.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationRevenueSchedulePeriods/batch-modify":{"post":{"description":"Creates or updates OpptyProductRelationRevenueSchedulePeriod records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OpptyProductRelationRevenueSchedulePeriods.batch_create_or_update","summary":"OpptyProductRelationRevenueSchedulePeriods.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOpptyProductRelationRevenueSchedulePeriodInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationRevenueSchedulePeriods/batch-restore":{"post":{"description":"Restores the deleted OpptyProductRelationRevenueSchedulePeriod records with the given ids.","operationId":"OpptyProductRelationRevenueSchedulePeriods.batch_restore","summary":"OpptyProductRelationRevenueSchedulePeriods.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationTypes/{id}":{"get":{"description":"Returns the OpptyProductRelationType record with the given id.","operationId":"OpptyProductRelationTypes.get","summary":"OpptyProductRelationTypes.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelationType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OpptyProductRelationType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelationType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OpptyProductRelationType record with the given id.","operationId":"OpptyProductRelationTypes.delete","summary":"OpptyProductRelationTypes.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelationType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OpptyProductRelationType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OpptyProductRelationType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OpptyProductRelationTypes.update","summary":"OpptyProductRelationTypes.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOpptyProductRelationTypeInput"}}}},"responses":{"200":{"description":"The changed OpptyProductRelationType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelationType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationTypes":{"get":{"description":"Returns a page of OpptyProductRelationType records, optionally filtered, sorted and limited to selected fields.","operationId":"OpptyProductRelationTypes.list","summary":"OpptyProductRelationTypes.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OpptyProductRelationType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OpptyProductRelationType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OpptyProductRelationType record.","operationId":"OpptyProductRelationTypes.create","summary":"OpptyProductRelationTypes.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOpptyProductRelationTypeInput"}}}},"responses":{"201":{"description":"The created OpptyProductRelationType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyProductRelationType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationTypes/batch-delete":{"post":{"description":"Deletes the OpptyProductRelationType records with the given ids.","operationId":"OpptyProductRelationTypes.batch_delete","summary":"OpptyProductRelationTypes.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationTypes/batch-modify":{"post":{"description":"Creates or updates OpptyProductRelationType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OpptyProductRelationTypes.batch_create_or_update","summary":"OpptyProductRelationTypes.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOpptyProductRelationTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyProductRelationTypes/batch-restore":{"post":{"description":"Restores the deleted OpptyProductRelationType records with the given ids.","operationId":"OpptyProductRelationTypes.batch_restore","summary":"OpptyProductRelationTypes.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRecurrences/{id}":{"get":{"description":"Returns the OpptyRecurrence record with the given id.","operationId":"OpptyRecurrences.get","summary":"OpptyRecurrences.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyRecurrence record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OpptyRecurrence record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyRecurrence"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OpptyRecurrence record with the given id.","operationId":"OpptyRecurrences.delete","summary":"OpptyRecurrences.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyRecurrence record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OpptyRecurrence record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OpptyRecurrence record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OpptyRecurrences.update","summary":"OpptyRecurrences.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOpptyRecurrenceInput"}}}},"responses":{"200":{"description":"The changed OpptyRecurrence record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyRecurrence"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRecurrences":{"get":{"description":"Returns a page of OpptyRecurrence records, optionally filtered, sorted and limited to selected fields.","operationId":"OpptyRecurrences.list","summary":"OpptyRecurrences.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OpptyRecurrence records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OpptyRecurrence"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OpptyRecurrence record.","operationId":"OpptyRecurrences.create","summary":"OpptyRecurrences.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOpptyRecurrenceInput"}}}},"responses":{"201":{"description":"The created OpptyRecurrence record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyRecurrence"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRecurrences/batch-delete":{"post":{"description":"Deletes the OpptyRecurrence records with the given ids.","operationId":"OpptyRecurrences.batch_delete","summary":"OpptyRecurrences.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRecurrences/batch-modify":{"post":{"description":"Creates or updates OpptyRecurrence records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OpptyRecurrences.batch_create_or_update","summary":"OpptyRecurrences.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOpptyRecurrenceInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRecurrences/batch-restore":{"post":{"description":"Restores the deleted OpptyRecurrence records with the given ids.","operationId":"OpptyRecurrences.batch_restore","summary":"OpptyRecurrences.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRevenueSchedules/{id}":{"get":{"description":"Returns the OpptyRevenueSchedule record with the given id.","operationId":"OpptyRevenueSchedules.get","summary":"OpptyRevenueSchedules.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyRevenueSchedule record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OpptyRevenueSchedule record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyRevenueSchedule"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OpptyRevenueSchedule record with the given id.","operationId":"OpptyRevenueSchedules.delete","summary":"OpptyRevenueSchedules.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyRevenueSchedule record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OpptyRevenueSchedule record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OpptyRevenueSchedule record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OpptyRevenueSchedules.update","summary":"OpptyRevenueSchedules.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOpptyRevenueScheduleInput"}}}},"responses":{"200":{"description":"The changed OpptyRevenueSchedule record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyRevenueSchedule"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRevenueSchedules":{"get":{"description":"Returns a page of OpptyRevenueSchedule records, optionally filtered, sorted and limited to selected fields.","operationId":"OpptyRevenueSchedules.list","summary":"OpptyRevenueSchedules.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OpptyRevenueSchedule records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OpptyRevenueSchedule"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OpptyRevenueSchedule record.","operationId":"OpptyRevenueSchedules.create","summary":"OpptyRevenueSchedules.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOpptyRevenueScheduleInput"}}}},"responses":{"201":{"description":"The created OpptyRevenueSchedule record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyRevenueSchedule"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRevenueSchedules/batch-delete":{"post":{"description":"Deletes the OpptyRevenueSchedule records with the given ids.","operationId":"OpptyRevenueSchedules.batch_delete","summary":"OpptyRevenueSchedules.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRevenueSchedules/batch-modify":{"post":{"description":"Creates or updates OpptyRevenueSchedule records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OpptyRevenueSchedules.batch_create_or_update","summary":"OpptyRevenueSchedules.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOpptyRevenueScheduleInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRevenueSchedules/batch-restore":{"post":{"description":"Restores the deleted OpptyRevenueSchedule records with the given ids.","operationId":"OpptyRevenueSchedules.batch_restore","summary":"OpptyRevenueSchedules.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRevenueSchedulePeriods/{id}":{"get":{"description":"Returns the OpptyRevenueSchedulePeriod record with the given id.","operationId":"OpptyRevenueSchedulePeriods.get","summary":"OpptyRevenueSchedulePeriods.get","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyRevenueSchedulePeriod record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The OpptyRevenueSchedulePeriod record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyRevenueSchedulePeriod"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the OpptyRevenueSchedulePeriod record with the given id.","operationId":"OpptyRevenueSchedulePeriods.delete","summary":"OpptyRevenueSchedulePeriods.delete","tags":["Lead & Opportunity"],"parameters":[{"name":"id","in":"path","description":"Id of the OpptyRevenueSchedulePeriod record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the OpptyRevenueSchedulePeriod record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the OpptyRevenueSchedulePeriod record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"OpptyRevenueSchedulePeriods.update","summary":"OpptyRevenueSchedulePeriods.update","tags":["Lead & Opportunity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateOpptyRevenueSchedulePeriodInput"}}}},"responses":{"200":{"description":"The changed OpptyRevenueSchedulePeriod record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyRevenueSchedulePeriod"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRevenueSchedulePeriods":{"get":{"description":"Returns a page of OpptyRevenueSchedulePeriod records, optionally filtered, sorted and limited to selected fields.","operationId":"OpptyRevenueSchedulePeriods.list","summary":"OpptyRevenueSchedulePeriods.list","tags":["Lead & Opportunity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of OpptyRevenueSchedulePeriod records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/OpptyRevenueSchedulePeriod"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a OpptyRevenueSchedulePeriod record.","operationId":"OpptyRevenueSchedulePeriods.create","summary":"OpptyRevenueSchedulePeriods.create","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createOpptyRevenueSchedulePeriodInput"}}}},"responses":{"201":{"description":"The created OpptyRevenueSchedulePeriod record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/OpptyRevenueSchedulePeriod"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRevenueSchedulePeriods/batch-delete":{"post":{"description":"Deletes the OpptyRevenueSchedulePeriod records with the given ids.","operationId":"OpptyRevenueSchedulePeriods.batch_delete","summary":"OpptyRevenueSchedulePeriods.batch_delete","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRevenueSchedulePeriods/batch-modify":{"post":{"description":"Creates or updates OpptyRevenueSchedulePeriod records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"OpptyRevenueSchedulePeriods.batch_create_or_update","summary":"OpptyRevenueSchedulePeriods.batch_create_or_update","tags":["Lead & Opportunity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchOpptyRevenueSchedulePeriodInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/OpptyRevenueSchedulePeriods/batch-restore":{"post":{"description":"Restores the deleted OpptyRevenueSchedulePeriod records with the given ids.","operationId":"OpptyRevenueSchedulePeriods.batch_restore","summary":"OpptyRevenueSchedulePeriods.batch_restore","tags":["Lead & Opportunity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ParentAccountRelationTypes/{id}":{"get":{"description":"Returns the ParentAccountRelationType record with the given id.","operationId":"ParentAccountRelationTypes.get","summary":"ParentAccountRelationTypes.get","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the ParentAccountRelationType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ParentAccountRelationType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ParentAccountRelationType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ParentAccountRelationType record with the given id.","operationId":"ParentAccountRelationTypes.delete","summary":"ParentAccountRelationTypes.delete","tags":["Account"],"parameters":[{"name":"id","in":"path","description":"Id of the ParentAccountRelationType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ParentAccountRelationType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ParentAccountRelationType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ParentAccountRelationTypes.update","summary":"ParentAccountRelationTypes.update","tags":["Account"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateParentAccountRelationTypeInput"}}}},"responses":{"200":{"description":"The changed ParentAccountRelationType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ParentAccountRelationType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ParentAccountRelationTypes":{"get":{"description":"Returns a page of ParentAccountRelationType records, optionally filtered, sorted and limited to selected fields.","operationId":"ParentAccountRelationTypes.list","summary":"ParentAccountRelationTypes.list","tags":["Account"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ParentAccountRelationType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ParentAccountRelationType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ParentAccountRelationType record.","operationId":"ParentAccountRelationTypes.create","summary":"ParentAccountRelationTypes.create","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createParentAccountRelationTypeInput"}}}},"responses":{"201":{"description":"The created ParentAccountRelationType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ParentAccountRelationType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ParentAccountRelationTypes/batch-delete":{"post":{"description":"Deletes the ParentAccountRelationType records with the given ids.","operationId":"ParentAccountRelationTypes.batch_delete","summary":"ParentAccountRelationTypes.batch_delete","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ParentAccountRelationTypes/batch-modify":{"post":{"description":"Creates or updates ParentAccountRelationType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ParentAccountRelationTypes.batch_create_or_update","summary":"ParentAccountRelationTypes.batch_create_or_update","tags":["Account"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchParentAccountRelationTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ParentAccountRelationTypes/batch-restore":{"post":{"description":"Restores the deleted ParentAccountRelationType records with the given ids.","operationId":"ParentAccountRelationTypes.batch_restore","summary":"ParentAccountRelationTypes.batch_restore","tags":["Account"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Phones/{id}":{"get":{"description":"Returns the Phone record with the given id.","operationId":"Phones.get","summary":"Phones.get","tags":["Phone"],"parameters":[{"name":"id","in":"path","description":"Id of the Phone record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Phone record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Phone"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Phone record with the given id.","operationId":"Phones.delete","summary":"Phones.delete","tags":["Phone"],"parameters":[{"name":"id","in":"path","description":"Id of the Phone record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Phone record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Phone record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Phones.update","summary":"Phones.update","tags":["Phone"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updatePhoneInput"}}}},"responses":{"200":{"description":"The changed Phone record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Phone"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Phones":{"get":{"description":"Returns a page of Phone records, optionally filtered, sorted and limited to selected fields.","operationId":"Phones.list","summary":"Phones.list","tags":["Phone"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Phone records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Phone"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Phone record.","operationId":"Phones.create","summary":"Phones.create","tags":["Phone"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createPhoneInput"}}}},"responses":{"201":{"description":"The created Phone record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Phone"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Phones/batch-delete":{"post":{"description":"Deletes the Phone records with the given ids.","operationId":"Phones.batch_delete","summary":"Phones.batch_delete","tags":["Phone"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Phones/batch-modify":{"post":{"description":"Creates or updates Phone records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Phones.batch_create_or_update","summary":"Phones.batch_create_or_update","tags":["Phone"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchPhoneInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Phones/batch-restore":{"post":{"description":"Restores the deleted Phone records with the given ids.","operationId":"Phones.batch_restore","summary":"Phones.batch_restore","tags":["Phone"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Pipelines/{id}":{"get":{"description":"Returns the Pipeline record with the given id.","operationId":"Pipelines.get","summary":"Pipelines.get","tags":["Pipeline"],"parameters":[{"name":"id","in":"path","description":"Id of the Pipeline record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Pipeline record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Pipeline"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Pipeline record with the given id.","operationId":"Pipelines.delete","summary":"Pipelines.delete","tags":["Pipeline"],"parameters":[{"name":"id","in":"path","description":"Id of the Pipeline record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Pipeline record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Pipeline record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Pipelines.update","summary":"Pipelines.update","tags":["Pipeline"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updatePipelineInput"}}}},"responses":{"200":{"description":"The changed Pipeline record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Pipeline"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Pipelines":{"get":{"description":"Returns a page of Pipeline records, optionally filtered, sorted and limited to selected fields.","operationId":"Pipelines.list","summary":"Pipelines.list","tags":["Pipeline"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Pipeline records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Pipeline"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Pipeline record.","operationId":"Pipelines.create","summary":"Pipelines.create","tags":["Pipeline"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createPipelineInput"}}}},"responses":{"201":{"description":"The created Pipeline record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Pipeline"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Pipelines/batch-delete":{"post":{"description":"Deletes the Pipeline records with the given ids.","operationId":"Pipelines.batch_delete","summary":"Pipelines.batch_delete","tags":["Pipeline"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Pipelines/batch-modify":{"post":{"description":"Creates or updates Pipeline records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Pipelines.batch_create_or_update","summary":"Pipelines.batch_create_or_update","tags":["Pipeline"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchPipelineInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Pipelines/batch-restore":{"post":{"description":"Restores the deleted Pipeline records with the given ids.","operationId":"Pipelines.batch_restore","summary":"Pipelines.batch_restore","tags":["Pipeline"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Processes/{id}":{"get":{"description":"Returns the Process record with the given id.","operationId":"Processes.get","summary":"Processes.get","tags":["Process"],"parameters":[{"name":"id","in":"path","description":"Id of the Process record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Process record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Process"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Process record with the given id.","operationId":"Processes.delete","summary":"Processes.delete","tags":["Process"],"parameters":[{"name":"id","in":"path","description":"Id of the Process record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Process record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Process record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Processes.update","summary":"Processes.update","tags":["Process"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProcessInput"}}}},"responses":{"200":{"description":"The changed Process record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Process"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Processes":{"get":{"description":"Returns a page of Process records, optionally filtered, sorted and limited to selected fields.","operationId":"Processes.list","summary":"Processes.list","tags":["Process"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Process records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Process"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Process record.","operationId":"Processes.create","summary":"Processes.create","tags":["Process"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProcessInput"}}}},"responses":{"201":{"description":"The created Process record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Process"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Processes/batch-delete":{"post":{"description":"Deletes the Process records with the given ids.","operationId":"Processes.batch_delete","summary":"Processes.batch_delete","tags":["Process"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Processes/batch-modify":{"post":{"description":"Creates or updates Process records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Processes.batch_create_or_update","summary":"Processes.batch_create_or_update","tags":["Process"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProcessInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Processes/batch-restore":{"post":{"description":"Restores the deleted Process records with the given ids.","operationId":"Processes.batch_restore","summary":"Processes.batch_restore","tags":["Process"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessActivityLogs/{id}":{"get":{"description":"Returns the ProcessActivityLog record with the given id.","operationId":"ProcessActivityLogs.get","summary":"ProcessActivityLogs.get","tags":["Process"],"parameters":[{"name":"id","in":"path","description":"Id of the ProcessActivityLog record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProcessActivityLog record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProcessActivityLog"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProcessActivityLog record with the given id.","operationId":"ProcessActivityLogs.delete","summary":"ProcessActivityLogs.delete","tags":["Process"],"parameters":[{"name":"id","in":"path","description":"Id of the ProcessActivityLog record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProcessActivityLog record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProcessActivityLog record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProcessActivityLogs.update","summary":"ProcessActivityLogs.update","tags":["Process"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProcessActivityLogInput"}}}},"responses":{"200":{"description":"The changed ProcessActivityLog record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProcessActivityLog"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessActivityLogs":{"get":{"description":"Returns a page of ProcessActivityLog records, optionally filtered, sorted and limited to selected fields.","operationId":"ProcessActivityLogs.list","summary":"ProcessActivityLogs.list","tags":["Process"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProcessActivityLog records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProcessActivityLog"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProcessActivityLog record.","operationId":"ProcessActivityLogs.create","summary":"ProcessActivityLogs.create","tags":["Process"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProcessActivityLogInput"}}}},"responses":{"201":{"description":"The created ProcessActivityLog record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProcessActivityLog"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessActivityLogs/batch-delete":{"post":{"description":"Deletes the ProcessActivityLog records with the given ids.","operationId":"ProcessActivityLogs.batch_delete","summary":"ProcessActivityLogs.batch_delete","tags":["Process"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessActivityLogs/batch-modify":{"post":{"description":"Creates or updates ProcessActivityLog records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProcessActivityLogs.batch_create_or_update","summary":"ProcessActivityLogs.batch_create_or_update","tags":["Process"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProcessActivityLogInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessActivityLogs/batch-restore":{"post":{"description":"Restores the deleted ProcessActivityLog records with the given ids.","operationId":"ProcessActivityLogs.batch_restore","summary":"ProcessActivityLogs.batch_restore","tags":["Process"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessActivityLogLines/{id}":{"get":{"description":"Returns the ProcessActivityLogLine record with the given id.","operationId":"ProcessActivityLogLines.get","summary":"ProcessActivityLogLines.get","tags":["Process"],"parameters":[{"name":"id","in":"path","description":"Id of the ProcessActivityLogLine record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProcessActivityLogLine record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProcessActivityLogLine"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProcessActivityLogLine record with the given id.","operationId":"ProcessActivityLogLines.delete","summary":"ProcessActivityLogLines.delete","tags":["Process"],"parameters":[{"name":"id","in":"path","description":"Id of the ProcessActivityLogLine record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProcessActivityLogLine record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProcessActivityLogLine record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProcessActivityLogLines.update","summary":"ProcessActivityLogLines.update","tags":["Process"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProcessActivityLogLineInput"}}}},"responses":{"200":{"description":"The changed ProcessActivityLogLine record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProcessActivityLogLine"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessActivityLogLines":{"get":{"description":"Returns a page of ProcessActivityLogLine records, optionally filtered, sorted and limited to selected fields.","operationId":"ProcessActivityLogLines.list","summary":"ProcessActivityLogLines.list","tags":["Process"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProcessActivityLogLine records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProcessActivityLogLine"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProcessActivityLogLine record.","operationId":"ProcessActivityLogLines.create","summary":"ProcessActivityLogLines.create","tags":["Process"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProcessActivityLogLineInput"}}}},"responses":{"201":{"description":"The created ProcessActivityLogLine record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProcessActivityLogLine"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessActivityLogLines/batch-delete":{"post":{"description":"Deletes the ProcessActivityLogLine records with the given ids.","operationId":"ProcessActivityLogLines.batch_delete","summary":"ProcessActivityLogLines.batch_delete","tags":["Process"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessActivityLogLines/batch-modify":{"post":{"description":"Creates or updates ProcessActivityLogLine records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProcessActivityLogLines.batch_create_or_update","summary":"ProcessActivityLogLines.batch_create_or_update","tags":["Process"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProcessActivityLogLineInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessActivityLogLines/batch-restore":{"post":{"description":"Restores the deleted ProcessActivityLogLine records with the given ids.","operationId":"ProcessActivityLogLines.batch_restore","summary":"ProcessActivityLogLines.batch_restore","tags":["Process"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessTemplates/{id}":{"get":{"description":"Returns the ProcessTemplate record with the given id.","operationId":"ProcessTemplates.get","summary":"ProcessTemplates.get","tags":["Process"],"parameters":[{"name":"id","in":"path","description":"Id of the ProcessTemplate record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProcessTemplate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProcessTemplate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProcessTemplate record with the given id.","operationId":"ProcessTemplates.delete","summary":"ProcessTemplates.delete","tags":["Process"],"parameters":[{"name":"id","in":"path","description":"Id of the ProcessTemplate record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProcessTemplate record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProcessTemplate record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProcessTemplates.update","summary":"ProcessTemplates.update","tags":["Process"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProcessTemplateInput"}}}},"responses":{"200":{"description":"The changed ProcessTemplate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProcessTemplate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessTemplates":{"get":{"description":"Returns a page of ProcessTemplate records, optionally filtered, sorted and limited to selected fields.","operationId":"ProcessTemplates.list","summary":"ProcessTemplates.list","tags":["Process"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProcessTemplate records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProcessTemplate"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProcessTemplate record.","operationId":"ProcessTemplates.create","summary":"ProcessTemplates.create","tags":["Process"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProcessTemplateInput"}}}},"responses":{"201":{"description":"The created ProcessTemplate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProcessTemplate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessTemplates/batch-delete":{"post":{"description":"Deletes the ProcessTemplate records with the given ids.","operationId":"ProcessTemplates.batch_delete","summary":"ProcessTemplates.batch_delete","tags":["Process"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessTemplates/batch-modify":{"post":{"description":"Creates or updates ProcessTemplate records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProcessTemplates.batch_create_or_update","summary":"ProcessTemplates.batch_create_or_update","tags":["Process"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProcessTemplateInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProcessTemplates/batch-restore":{"post":{"description":"Restores the deleted ProcessTemplate records with the given ids.","operationId":"ProcessTemplates.batch_restore","summary":"ProcessTemplates.batch_restore","tags":["Process"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Products/{id}":{"get":{"description":"Returns one product by id.","operationId":"Products.get","summary":"Get a product","tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Id of the Product record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Product record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Product"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Soft-deletes one product and answers with its id.","operationId":"Products.delete","summary":"Delete a product","tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Id of the Product record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes the fields you send and leaves the rest as they are.","parameters":[{"name":"id","in":"path","description":"Id of the Product record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Products.update","summary":"Update a product","tags":["Product"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProductInput"}}}},"responses":{"200":{"description":"The changed Product record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Product"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Products":{"get":{"description":"Returns the products the API application can read, one page at a time.","operationId":"Products.list","summary":"List products","tags":["Product"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Product records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Product"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates one product and answers 201 with the record. `name` and `unit_symbol` are required, and `sku` must be unique.","operationId":"Products.create","summary":"Create a product","tags":["Product"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProductInput"},"example":{"name":"Analytics Pro licence","sku":"NW-PRO-12","unit_symbol":"seat","description":"Annual licence for one analyst seat."}}}},"responses":{"201":{"description":"The created Product record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Product"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Products/batch-delete":{"post":{"description":"Soft-deletes the products whose ids are in the body, a JSON array.","operationId":"Products.batch_delete","summary":"Delete products in a batch","tags":["Product"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Products/batch-modify":{"post":{"description":"An item with an `id` updates that product; an item without one creates a product. By default one invalid item fails the whole call with HTTP 422.","operationId":"Products.batch_create_or_update","summary":"Create or update products in a batch","tags":["Product"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProductInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Products/batch-restore":{"post":{"description":"Restores the soft-deleted products whose ids are in the body, a JSON array.","operationId":"Products.batch_restore","summary":"Restore deleted products","tags":["Product"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductCategories/{id}":{"get":{"description":"Returns the ProductCategory record with the given id.","operationId":"ProductCategories.get","summary":"ProductCategories.get","tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Id of the ProductCategory record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProductCategory record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductCategory"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProductCategory record with the given id.","operationId":"ProductCategories.delete","summary":"ProductCategories.delete","tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Id of the ProductCategory record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProductCategory record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProductCategory record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProductCategories.update","summary":"ProductCategories.update","tags":["Product"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProductCategoryInput"}}}},"responses":{"200":{"description":"The changed ProductCategory record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductCategory"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductCategories":{"get":{"description":"Returns a page of ProductCategory records, optionally filtered, sorted and limited to selected fields.","operationId":"ProductCategories.list","summary":"ProductCategories.list","tags":["Product"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProductCategory records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProductCategory"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProductCategory record.","operationId":"ProductCategories.create","summary":"ProductCategories.create","tags":["Product"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProductCategoryInput"}}}},"responses":{"201":{"description":"The created ProductCategory record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductCategory"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductCategories/batch-delete":{"post":{"description":"Deletes the ProductCategory records with the given ids.","operationId":"ProductCategories.batch_delete","summary":"ProductCategories.batch_delete","tags":["Product"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductCategories/batch-modify":{"post":{"description":"Creates or updates ProductCategory records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProductCategories.batch_create_or_update","summary":"ProductCategories.batch_create_or_update","tags":["Product"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProductCategoryInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductCategories/batch-restore":{"post":{"description":"Restores the deleted ProductCategory records with the given ids.","operationId":"ProductCategories.batch_restore","summary":"ProductCategories.batch_restore","tags":["Product"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductDataExRelations/{id}":{"get":{"description":"Returns the ProductDataExRelation record with the given id.","operationId":"ProductDataExRelations.get","summary":"ProductDataExRelations.get","tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Id of the ProductDataExRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProductDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductDataExRelations":{"get":{"description":"Returns a page of ProductDataExRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ProductDataExRelations.list","summary":"ProductDataExRelations.list","tags":["Product"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProductDataExRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProductDataExRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPipelineRelations/{id}":{"get":{"description":"Returns the ProductPipelineRelation record with the given id.","operationId":"ProductPipelineRelations.get","summary":"ProductPipelineRelations.get","tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Id of the ProductPipelineRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProductPipelineRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductPipelineRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProductPipelineRelation record with the given id.","operationId":"ProductPipelineRelations.delete","summary":"ProductPipelineRelations.delete","tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Id of the ProductPipelineRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProductPipelineRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProductPipelineRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProductPipelineRelations.update","summary":"ProductPipelineRelations.update","tags":["Product"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProductPipelineRelationInput"}}}},"responses":{"200":{"description":"The changed ProductPipelineRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductPipelineRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPipelineRelations":{"get":{"description":"Returns a page of ProductPipelineRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ProductPipelineRelations.list","summary":"ProductPipelineRelations.list","tags":["Product"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProductPipelineRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProductPipelineRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProductPipelineRelation record.","operationId":"ProductPipelineRelations.create","summary":"ProductPipelineRelations.create","tags":["Product"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProductPipelineRelationInput"}}}},"responses":{"201":{"description":"The created ProductPipelineRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductPipelineRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPipelineRelations/batch-delete":{"post":{"description":"Deletes the ProductPipelineRelation records with the given ids.","operationId":"ProductPipelineRelations.batch_delete","summary":"ProductPipelineRelations.batch_delete","tags":["Product"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPipelineRelations/batch-modify":{"post":{"description":"Creates or updates ProductPipelineRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProductPipelineRelations.batch_create_or_update","summary":"ProductPipelineRelations.batch_create_or_update","tags":["Product"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProductPipelineRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPipelineRelations/batch-restore":{"post":{"description":"Restores the deleted ProductPipelineRelation records with the given ids.","operationId":"ProductPipelineRelations.batch_restore","summary":"ProductPipelineRelations.batch_restore","tags":["Product"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPriceLists/{id}":{"get":{"description":"Returns the ProductPriceList record with the given id.","operationId":"ProductPriceLists.get","summary":"ProductPriceLists.get","tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Id of the ProductPriceList record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProductPriceList record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductPriceList"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProductPriceList record with the given id.","operationId":"ProductPriceLists.delete","summary":"ProductPriceLists.delete","tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Id of the ProductPriceList record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProductPriceList record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProductPriceList record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProductPriceLists.update","summary":"ProductPriceLists.update","tags":["Product"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProductPriceListInput"}}}},"responses":{"200":{"description":"The changed ProductPriceList record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductPriceList"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPriceLists":{"get":{"description":"Returns a page of ProductPriceList records, optionally filtered, sorted and limited to selected fields.","operationId":"ProductPriceLists.list","summary":"ProductPriceLists.list","tags":["Product"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProductPriceList records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProductPriceList"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProductPriceList record.","operationId":"ProductPriceLists.create","summary":"ProductPriceLists.create","tags":["Product"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProductPriceListInput"}}}},"responses":{"201":{"description":"The created ProductPriceList record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductPriceList"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPriceLists/batch-delete":{"post":{"description":"Deletes the ProductPriceList records with the given ids.","operationId":"ProductPriceLists.batch_delete","summary":"ProductPriceLists.batch_delete","tags":["Product"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPriceLists/batch-modify":{"post":{"description":"Creates or updates ProductPriceList records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProductPriceLists.batch_create_or_update","summary":"ProductPriceLists.batch_create_or_update","tags":["Product"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProductPriceListInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPriceLists/batch-restore":{"post":{"description":"Restores the deleted ProductPriceList records with the given ids.","operationId":"ProductPriceLists.batch_restore","summary":"ProductPriceLists.batch_restore","tags":["Product"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPriceListPrices/{id}":{"get":{"description":"Returns the ProductPriceListPrice record with the given id.","operationId":"ProductPriceListPrices.get","summary":"ProductPriceListPrices.get","tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Id of the ProductPriceListPrice record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProductPriceListPrice record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductPriceListPrice"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProductPriceListPrice record with the given id.","operationId":"ProductPriceListPrices.delete","summary":"ProductPriceListPrices.delete","tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Id of the ProductPriceListPrice record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProductPriceListPrice record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProductPriceListPrice record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProductPriceListPrices.update","summary":"ProductPriceListPrices.update","tags":["Product"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProductPriceListPriceInput"}}}},"responses":{"200":{"description":"The changed ProductPriceListPrice record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductPriceListPrice"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPriceListPrices":{"get":{"description":"Returns a page of ProductPriceListPrice records, optionally filtered, sorted and limited to selected fields.","operationId":"ProductPriceListPrices.list","summary":"ProductPriceListPrices.list","tags":["Product"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProductPriceListPrice records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProductPriceListPrice"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProductPriceListPrice record.","operationId":"ProductPriceListPrices.create","summary":"ProductPriceListPrices.create","tags":["Product"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProductPriceListPriceInput"}}}},"responses":{"201":{"description":"The created ProductPriceListPrice record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductPriceListPrice"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPriceListPrices/batch-delete":{"post":{"description":"Deletes the ProductPriceListPrice records with the given ids.","operationId":"ProductPriceListPrices.batch_delete","summary":"ProductPriceListPrices.batch_delete","tags":["Product"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPriceListPrices/batch-modify":{"post":{"description":"Creates or updates ProductPriceListPrice records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProductPriceListPrices.batch_create_or_update","summary":"ProductPriceListPrices.batch_create_or_update","tags":["Product"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProductPriceListPriceInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductPriceListPrices/batch-restore":{"post":{"description":"Restores the deleted ProductPriceListPrice records with the given ids.","operationId":"ProductPriceListPrices.batch_restore","summary":"ProductPriceListPrices.batch_restore","tags":["Product"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductTypes/{id}":{"get":{"description":"Returns the ProductType record with the given id.","operationId":"ProductTypes.get","summary":"ProductTypes.get","tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Id of the ProductType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProductType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProductType record with the given id.","operationId":"ProductTypes.delete","summary":"ProductTypes.delete","tags":["Product"],"parameters":[{"name":"id","in":"path","description":"Id of the ProductType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProductType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProductType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProductTypes.update","summary":"ProductTypes.update","tags":["Product"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProductTypeInput"}}}},"responses":{"200":{"description":"The changed ProductType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductTypes":{"get":{"description":"Returns a page of ProductType records, optionally filtered, sorted and limited to selected fields.","operationId":"ProductTypes.list","summary":"ProductTypes.list","tags":["Product"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProductType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProductType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProductType record.","operationId":"ProductTypes.create","summary":"ProductTypes.create","tags":["Product"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProductTypeInput"}}}},"responses":{"201":{"description":"The created ProductType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProductType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductTypes/batch-delete":{"post":{"description":"Deletes the ProductType records with the given ids.","operationId":"ProductTypes.batch_delete","summary":"ProductTypes.batch_delete","tags":["Product"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductTypes/batch-modify":{"post":{"description":"Creates or updates ProductType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProductTypes.batch_create_or_update","summary":"ProductTypes.batch_create_or_update","tags":["Product"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProductTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProductTypes/batch-restore":{"post":{"description":"Restores the deleted ProductType records with the given ids.","operationId":"ProductTypes.batch_restore","summary":"ProductTypes.batch_restore","tags":["Product"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Profiles/{id}":{"get":{"description":"Returns the Profile record with the given id.","operationId":"Profiles.get","summary":"Profiles.get","tags":["Profile"],"parameters":[{"name":"id","in":"path","description":"Id of the Profile record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Profile record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Profile"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Profiles":{"get":{"description":"Returns a page of Profile records, optionally filtered, sorted and limited to selected fields.","operationId":"Profiles.list","summary":"Profiles.list","tags":["Profile"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Profile records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Profile"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProfileRelations/{id}":{"get":{"description":"Returns the ProfileRelation record with the given id.","operationId":"ProfileRelations.get","summary":"ProfileRelations.get","tags":["Profile"],"parameters":[{"name":"id","in":"path","description":"Id of the ProfileRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProfileRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProfileRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProfileRelation record with the given id.","operationId":"ProfileRelations.delete","summary":"ProfileRelations.delete","tags":["Profile"],"parameters":[{"name":"id","in":"path","description":"Id of the ProfileRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProfileRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProfileRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProfileRelations.update","summary":"ProfileRelations.update","tags":["Profile"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProfileRelationInput"}}}},"responses":{"200":{"description":"The changed ProfileRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProfileRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProfileRelations":{"get":{"description":"Returns a page of ProfileRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ProfileRelations.list","summary":"ProfileRelations.list","tags":["Profile"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProfileRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProfileRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProfileRelation record.","operationId":"ProfileRelations.create","summary":"ProfileRelations.create","tags":["Profile"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProfileRelationInput"}}}},"responses":{"201":{"description":"The created ProfileRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProfileRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProfileRelations/batch-delete":{"post":{"description":"Deletes the ProfileRelation records with the given ids.","operationId":"ProfileRelations.batch_delete","summary":"ProfileRelations.batch_delete","tags":["Profile"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProfileRelations/batch-modify":{"post":{"description":"Creates or updates ProfileRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProfileRelations.batch_create_or_update","summary":"ProfileRelations.batch_create_or_update","tags":["Profile"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProfileRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProfileRelations/batch-restore":{"post":{"description":"Restores the deleted ProfileRelation records with the given ids.","operationId":"ProfileRelations.batch_restore","summary":"ProfileRelations.batch_restore","tags":["Profile"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProfileSharingClientRelations/{id}":{"get":{"description":"Returns the ProfileSharingClientRelation record with the given id.","operationId":"ProfileSharingClientRelations.get","summary":"ProfileSharingClientRelations.get","tags":["Profile"],"parameters":[{"name":"id","in":"path","description":"Id of the ProfileSharingClientRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProfileSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProfileSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProfileSharingClientRelations":{"get":{"description":"Returns a page of ProfileSharingClientRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ProfileSharingClientRelations.list","summary":"ProfileSharingClientRelations.list","tags":["Profile"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProfileSharingClientRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProfileSharingClientRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProfileSharingSalesUnitRelations/{id}":{"get":{"description":"Returns the ProfileSharingSalesUnitRelation record with the given id.","operationId":"ProfileSharingSalesUnitRelations.get","summary":"ProfileSharingSalesUnitRelations.get","tags":["Profile"],"parameters":[{"name":"id","in":"path","description":"Id of the ProfileSharingSalesUnitRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProfileSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProfileSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProfileSharingSalesUnitRelations":{"get":{"description":"Returns a page of ProfileSharingSalesUnitRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ProfileSharingSalesUnitRelations.list","summary":"ProfileSharingSalesUnitRelations.list","tags":["Profile"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProfileSharingSalesUnitRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProfileSharingSalesUnitRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Projects/{id}":{"get":{"description":"Returns the Project record with the given id.","operationId":"Projects.get","summary":"Projects.get","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the Project record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Project record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Project"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Project record with the given id.","operationId":"Projects.delete","summary":"Projects.delete","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the Project record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Project record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Project record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Projects.update","summary":"Projects.update","tags":["Project"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProjectInput"}}}},"responses":{"200":{"description":"The changed Project record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Project"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Projects":{"get":{"description":"Returns a page of Project records, optionally filtered, sorted and limited to selected fields.","operationId":"Projects.list","summary":"Projects.list","tags":["Project"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Project records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Project"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Project record.","operationId":"Projects.create","summary":"Projects.create","tags":["Project"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProjectInput"}}}},"responses":{"201":{"description":"The created Project record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Project"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Projects/batch-delete":{"post":{"description":"Deletes the Project records with the given ids.","operationId":"Projects.batch_delete","summary":"Projects.batch_delete","tags":["Project"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Projects/batch-modify":{"post":{"description":"Creates or updates Project records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Projects.batch_create_or_update","summary":"Projects.batch_create_or_update","tags":["Project"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProjectInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Projects/batch-restore":{"post":{"description":"Restores the deleted Project records with the given ids.","operationId":"Projects.batch_restore","summary":"Projects.batch_restore","tags":["Project"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectContactRelations/{id}":{"get":{"description":"Returns the ProjectContactRelation record with the given id.","operationId":"ProjectContactRelations.get","summary":"ProjectContactRelations.get","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the ProjectContactRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProjectContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProjectContactRelation record with the given id.","operationId":"ProjectContactRelations.delete","summary":"ProjectContactRelations.delete","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the ProjectContactRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProjectContactRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProjectContactRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProjectContactRelations.update","summary":"ProjectContactRelations.update","tags":["Project"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProjectContactRelationInput"}}}},"responses":{"200":{"description":"The changed ProjectContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectContactRelations":{"get":{"description":"Returns a page of ProjectContactRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ProjectContactRelations.list","summary":"ProjectContactRelations.list","tags":["Project"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProjectContactRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProjectContactRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProjectContactRelation record.","operationId":"ProjectContactRelations.create","summary":"ProjectContactRelations.create","tags":["Project"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProjectContactRelationInput"}}}},"responses":{"201":{"description":"The created ProjectContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectContactRelations/batch-delete":{"post":{"description":"Deletes the ProjectContactRelation records with the given ids.","operationId":"ProjectContactRelations.batch_delete","summary":"ProjectContactRelations.batch_delete","tags":["Project"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectContactRelations/batch-modify":{"post":{"description":"Creates or updates ProjectContactRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProjectContactRelations.batch_create_or_update","summary":"ProjectContactRelations.batch_create_or_update","tags":["Project"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProjectContactRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectContactRelations/batch-restore":{"post":{"description":"Restores the deleted ProjectContactRelation records with the given ids.","operationId":"ProjectContactRelations.batch_restore","summary":"ProjectContactRelations.batch_restore","tags":["Project"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectDataExRelations/{id}":{"get":{"description":"Returns the ProjectDataExRelation record with the given id.","operationId":"ProjectDataExRelations.get","summary":"ProjectDataExRelations.get","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the ProjectDataExRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProjectDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectDataExRelations":{"get":{"description":"Returns a page of ProjectDataExRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ProjectDataExRelations.list","summary":"ProjectDataExRelations.list","tags":["Project"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProjectDataExRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProjectDataExRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectKPIs/{id}":{"get":{"description":"Returns the ProjectKPI record with the given id.","operationId":"ProjectKPIs.get","summary":"ProjectKPIs.get","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the ProjectKPI record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProjectKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProjectKPI record with the given id.","operationId":"ProjectKPIs.delete","summary":"ProjectKPIs.delete","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the ProjectKPI record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProjectKPI record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProjectKPI record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProjectKPIs.update","summary":"ProjectKPIs.update","tags":["Project"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProjectKPIInput"}}}},"responses":{"200":{"description":"The changed ProjectKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectKPIs":{"get":{"description":"Returns a page of ProjectKPI records, optionally filtered, sorted and limited to selected fields.","operationId":"ProjectKPIs.list","summary":"ProjectKPIs.list","tags":["Project"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProjectKPI records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProjectKPI"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProjectKPI record.","operationId":"ProjectKPIs.create","summary":"ProjectKPIs.create","tags":["Project"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProjectKPIInput"}}}},"responses":{"201":{"description":"The created ProjectKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectKPIs/batch-delete":{"post":{"description":"Deletes the ProjectKPI records with the given ids.","operationId":"ProjectKPIs.batch_delete","summary":"ProjectKPIs.batch_delete","tags":["Project"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectKPIs/batch-modify":{"post":{"description":"Creates or updates ProjectKPI records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProjectKPIs.batch_create_or_update","summary":"ProjectKPIs.batch_create_or_update","tags":["Project"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProjectKPIInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectKPIs/batch-restore":{"post":{"description":"Restores the deleted ProjectKPI records with the given ids.","operationId":"ProjectKPIs.batch_restore","summary":"ProjectKPIs.batch_restore","tags":["Project"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectObjectives/{id}":{"get":{"description":"Returns the ProjectObjective record with the given id.","operationId":"ProjectObjectives.get","summary":"ProjectObjectives.get","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the ProjectObjective record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProjectObjective record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectObjective"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProjectObjective record with the given id.","operationId":"ProjectObjectives.delete","summary":"ProjectObjectives.delete","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the ProjectObjective record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProjectObjective record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProjectObjective record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProjectObjectives.update","summary":"ProjectObjectives.update","tags":["Project"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProjectObjectiveInput"}}}},"responses":{"200":{"description":"The changed ProjectObjective record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectObjective"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectObjectives":{"get":{"description":"Returns a page of ProjectObjective records, optionally filtered, sorted and limited to selected fields.","operationId":"ProjectObjectives.list","summary":"ProjectObjectives.list","tags":["Project"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProjectObjective records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProjectObjective"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProjectObjective record.","operationId":"ProjectObjectives.create","summary":"ProjectObjectives.create","tags":["Project"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProjectObjectiveInput"}}}},"responses":{"201":{"description":"The created ProjectObjective record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectObjective"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectObjectives/batch-delete":{"post":{"description":"Deletes the ProjectObjective records with the given ids.","operationId":"ProjectObjectives.batch_delete","summary":"ProjectObjectives.batch_delete","tags":["Project"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectObjectives/batch-modify":{"post":{"description":"Creates or updates ProjectObjective records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProjectObjectives.batch_create_or_update","summary":"ProjectObjectives.batch_create_or_update","tags":["Project"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProjectObjectiveInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectObjectives/batch-restore":{"post":{"description":"Restores the deleted ProjectObjective records with the given ids.","operationId":"ProjectObjectives.batch_restore","summary":"ProjectObjectives.batch_restore","tags":["Project"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectSharingClientRelations/{id}":{"get":{"description":"Returns the ProjectSharingClientRelation record with the given id.","operationId":"ProjectSharingClientRelations.get","summary":"ProjectSharingClientRelations.get","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the ProjectSharingClientRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProjectSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProjectSharingClientRelation record with the given id.","operationId":"ProjectSharingClientRelations.delete","summary":"ProjectSharingClientRelations.delete","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the ProjectSharingClientRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProjectSharingClientRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProjectSharingClientRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProjectSharingClientRelations.update","summary":"ProjectSharingClientRelations.update","tags":["Project"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProjectSharingClientRelationInput"}}}},"responses":{"200":{"description":"The changed ProjectSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectSharingClientRelations":{"get":{"description":"Returns a page of ProjectSharingClientRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ProjectSharingClientRelations.list","summary":"ProjectSharingClientRelations.list","tags":["Project"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProjectSharingClientRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProjectSharingClientRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProjectSharingClientRelation record.","operationId":"ProjectSharingClientRelations.create","summary":"ProjectSharingClientRelations.create","tags":["Project"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProjectSharingClientRelationInput"}}}},"responses":{"201":{"description":"The created ProjectSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectSharingClientRelations/batch-delete":{"post":{"description":"Deletes the ProjectSharingClientRelation records with the given ids.","operationId":"ProjectSharingClientRelations.batch_delete","summary":"ProjectSharingClientRelations.batch_delete","tags":["Project"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectSharingClientRelations/batch-modify":{"post":{"description":"Creates or updates ProjectSharingClientRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProjectSharingClientRelations.batch_create_or_update","summary":"ProjectSharingClientRelations.batch_create_or_update","tags":["Project"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProjectSharingClientRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectSharingClientRelations/batch-restore":{"post":{"description":"Restores the deleted ProjectSharingClientRelation records with the given ids.","operationId":"ProjectSharingClientRelations.batch_restore","summary":"ProjectSharingClientRelations.batch_restore","tags":["Project"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectSharingSalesUnitRelations/{id}":{"get":{"description":"Returns the ProjectSharingSalesUnitRelation record with the given id.","operationId":"ProjectSharingSalesUnitRelations.get","summary":"ProjectSharingSalesUnitRelations.get","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the ProjectSharingSalesUnitRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProjectSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProjectSharingSalesUnitRelation record with the given id.","operationId":"ProjectSharingSalesUnitRelations.delete","summary":"ProjectSharingSalesUnitRelations.delete","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the ProjectSharingSalesUnitRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProjectSharingSalesUnitRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProjectSharingSalesUnitRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProjectSharingSalesUnitRelations.update","summary":"ProjectSharingSalesUnitRelations.update","tags":["Project"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProjectSharingSalesUnitRelationInput"}}}},"responses":{"200":{"description":"The changed ProjectSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectSharingSalesUnitRelations":{"get":{"description":"Returns a page of ProjectSharingSalesUnitRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ProjectSharingSalesUnitRelations.list","summary":"ProjectSharingSalesUnitRelations.list","tags":["Project"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProjectSharingSalesUnitRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProjectSharingSalesUnitRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProjectSharingSalesUnitRelation record.","operationId":"ProjectSharingSalesUnitRelations.create","summary":"ProjectSharingSalesUnitRelations.create","tags":["Project"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProjectSharingSalesUnitRelationInput"}}}},"responses":{"201":{"description":"The created ProjectSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectSharingSalesUnitRelations/batch-delete":{"post":{"description":"Deletes the ProjectSharingSalesUnitRelation records with the given ids.","operationId":"ProjectSharingSalesUnitRelations.batch_delete","summary":"ProjectSharingSalesUnitRelations.batch_delete","tags":["Project"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectSharingSalesUnitRelations/batch-modify":{"post":{"description":"Creates or updates ProjectSharingSalesUnitRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProjectSharingSalesUnitRelations.batch_create_or_update","summary":"ProjectSharingSalesUnitRelations.batch_create_or_update","tags":["Project"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProjectSharingSalesUnitRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectSharingSalesUnitRelations/batch-restore":{"post":{"description":"Restores the deleted ProjectSharingSalesUnitRelation records with the given ids.","operationId":"ProjectSharingSalesUnitRelations.batch_restore","summary":"ProjectSharingSalesUnitRelations.batch_restore","tags":["Project"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectTypes/{id}":{"get":{"description":"Returns the ProjectType record with the given id.","operationId":"ProjectTypes.get","summary":"ProjectTypes.get","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the ProjectType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ProjectType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ProjectType record with the given id.","operationId":"ProjectTypes.delete","summary":"ProjectTypes.delete","tags":["Project"],"parameters":[{"name":"id","in":"path","description":"Id of the ProjectType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ProjectType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ProjectType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ProjectTypes.update","summary":"ProjectTypes.update","tags":["Project"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateProjectTypeInput"}}}},"responses":{"200":{"description":"The changed ProjectType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectTypes":{"get":{"description":"Returns a page of ProjectType records, optionally filtered, sorted and limited to selected fields.","operationId":"ProjectTypes.list","summary":"ProjectTypes.list","tags":["Project"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ProjectType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProjectType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ProjectType record.","operationId":"ProjectTypes.create","summary":"ProjectTypes.create","tags":["Project"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createProjectTypeInput"}}}},"responses":{"201":{"description":"The created ProjectType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ProjectType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectTypes/batch-delete":{"post":{"description":"Deletes the ProjectType records with the given ids.","operationId":"ProjectTypes.batch_delete","summary":"ProjectTypes.batch_delete","tags":["Project"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectTypes/batch-modify":{"post":{"description":"Creates or updates ProjectType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ProjectTypes.batch_create_or_update","summary":"ProjectTypes.batch_create_or_update","tags":["Project"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchProjectTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ProjectTypes/batch-restore":{"post":{"description":"Restores the deleted ProjectType records with the given ids.","operationId":"ProjectTypes.batch_restore","summary":"ProjectTypes.batch_restore","tags":["Project"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Quotes/{id}":{"get":{"description":"Returns one quote by id.","operationId":"Quotes.get","summary":"Get a quote","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the Quote record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Quote record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Quote"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Soft-deletes one quote and answers with its id.","operationId":"Quotes.delete","summary":"Delete a quote","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the Quote record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes the fields you send and leaves the rest as they are.","parameters":[{"name":"id","in":"path","description":"Id of the Quote record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Quotes.update","summary":"Update a quote","tags":["Quote"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateQuoteInput"}}}},"responses":{"200":{"description":"The changed Quote record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Quote"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Quotes":{"get":{"description":"Returns the quotes the API application can read, one page at a time.","operationId":"Quotes.list","summary":"List quotes","tags":["Quote"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Quote records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Quote"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates one quote and answers 201 with the record. `name`, `owner_id`, `step_id` and `total_amount` are required.","operationId":"Quotes.create","summary":"Create a quote","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createQuoteInput"},"example":{"name":"Northwind Analytics - Q-1001","owner_id":"37000000-0000-4000-a000-000000000001","step_id":"d4000000-0000-4000-a000-000000000002","total_amount":{"base_value":24000}}}}},"responses":{"201":{"description":"The created Quote record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Quote"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Quotes/batch-delete":{"post":{"description":"Soft-deletes the quotes whose ids are in the body, a JSON array.","operationId":"Quotes.batch_delete","summary":"Delete quotes in a batch","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Quotes/batch-modify":{"post":{"description":"An item with an `id` updates that quote; an item without one creates a quote. By default one invalid item fails the whole call with HTTP 422.","operationId":"Quotes.batch_create_or_update","summary":"Create or update quotes in a batch","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchQuoteInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Quotes/batch-restore":{"post":{"description":"Restores the soft-deleted quotes whose ids are in the body, a JSON array.","operationId":"Quotes.batch_restore","summary":"Restore deleted quotes","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteAccountRelations/{id}":{"get":{"description":"Returns the QuoteAccountRelation record with the given id.","operationId":"QuoteAccountRelations.get","summary":"QuoteAccountRelations.get","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteAccountRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The QuoteAccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteAccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the QuoteAccountRelation record with the given id.","operationId":"QuoteAccountRelations.delete","summary":"QuoteAccountRelations.delete","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteAccountRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the QuoteAccountRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the QuoteAccountRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"QuoteAccountRelations.update","summary":"QuoteAccountRelations.update","tags":["Quote"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateQuoteAccountRelationInput"}}}},"responses":{"200":{"description":"The changed QuoteAccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteAccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteAccountRelations":{"get":{"description":"Returns a page of QuoteAccountRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"QuoteAccountRelations.list","summary":"QuoteAccountRelations.list","tags":["Quote"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of QuoteAccountRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/QuoteAccountRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a QuoteAccountRelation record.","operationId":"QuoteAccountRelations.create","summary":"QuoteAccountRelations.create","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createQuoteAccountRelationInput"}}}},"responses":{"201":{"description":"The created QuoteAccountRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteAccountRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteAccountRelations/batch-delete":{"post":{"description":"Deletes the QuoteAccountRelation records with the given ids.","operationId":"QuoteAccountRelations.batch_delete","summary":"QuoteAccountRelations.batch_delete","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteAccountRelations/batch-modify":{"post":{"description":"Creates or updates QuoteAccountRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"QuoteAccountRelations.batch_create_or_update","summary":"QuoteAccountRelations.batch_create_or_update","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchQuoteAccountRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteAccountRelations/batch-restore":{"post":{"description":"Restores the deleted QuoteAccountRelation records with the given ids.","operationId":"QuoteAccountRelations.batch_restore","summary":"QuoteAccountRelations.batch_restore","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteContactRelations/{id}":{"get":{"description":"Returns the QuoteContactRelation record with the given id.","operationId":"QuoteContactRelations.get","summary":"QuoteContactRelations.get","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteContactRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The QuoteContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the QuoteContactRelation record with the given id.","operationId":"QuoteContactRelations.delete","summary":"QuoteContactRelations.delete","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteContactRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the QuoteContactRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the QuoteContactRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"QuoteContactRelations.update","summary":"QuoteContactRelations.update","tags":["Quote"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateQuoteContactRelationInput"}}}},"responses":{"200":{"description":"The changed QuoteContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteContactRelations":{"get":{"description":"Returns a page of QuoteContactRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"QuoteContactRelations.list","summary":"QuoteContactRelations.list","tags":["Quote"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of QuoteContactRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/QuoteContactRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a QuoteContactRelation record.","operationId":"QuoteContactRelations.create","summary":"QuoteContactRelations.create","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createQuoteContactRelationInput"}}}},"responses":{"201":{"description":"The created QuoteContactRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteContactRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteContactRelations/batch-delete":{"post":{"description":"Deletes the QuoteContactRelation records with the given ids.","operationId":"QuoteContactRelations.batch_delete","summary":"QuoteContactRelations.batch_delete","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteContactRelations/batch-modify":{"post":{"description":"Creates or updates QuoteContactRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"QuoteContactRelations.batch_create_or_update","summary":"QuoteContactRelations.batch_create_or_update","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchQuoteContactRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteContactRelations/batch-restore":{"post":{"description":"Restores the deleted QuoteContactRelation records with the given ids.","operationId":"QuoteContactRelations.batch_restore","summary":"QuoteContactRelations.batch_restore","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteDataExRelations/{id}":{"get":{"description":"Returns the QuoteDataExRelation record with the given id.","operationId":"QuoteDataExRelations.get","summary":"QuoteDataExRelations.get","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteDataExRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The QuoteDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the QuoteDataExRelation record with the given id.","operationId":"QuoteDataExRelations.delete","summary":"QuoteDataExRelations.delete","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteDataExRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the QuoteDataExRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the QuoteDataExRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"QuoteDataExRelations.update","summary":"QuoteDataExRelations.update","tags":["Quote"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateQuoteDataExRelationInput"}}}},"responses":{"200":{"description":"The changed QuoteDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteDataExRelations":{"get":{"description":"Returns a page of QuoteDataExRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"QuoteDataExRelations.list","summary":"QuoteDataExRelations.list","tags":["Quote"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of QuoteDataExRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/QuoteDataExRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a QuoteDataExRelation record.","operationId":"QuoteDataExRelations.create","summary":"QuoteDataExRelations.create","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createQuoteDataExRelationInput"}}}},"responses":{"201":{"description":"The created QuoteDataExRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteDataExRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteDataExRelations/batch-delete":{"post":{"description":"Deletes the QuoteDataExRelation records with the given ids.","operationId":"QuoteDataExRelations.batch_delete","summary":"QuoteDataExRelations.batch_delete","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteDataExRelations/batch-modify":{"post":{"description":"Creates or updates QuoteDataExRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"QuoteDataExRelations.batch_create_or_update","summary":"QuoteDataExRelations.batch_create_or_update","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchQuoteDataExRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteDataExRelations/batch-restore":{"post":{"description":"Restores the deleted QuoteDataExRelation records with the given ids.","operationId":"QuoteDataExRelations.batch_restore","summary":"QuoteDataExRelations.batch_restore","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteKPIs/{id}":{"get":{"description":"Returns the QuoteKPI record with the given id.","operationId":"QuoteKPIs.get","summary":"QuoteKPIs.get","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteKPI record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The QuoteKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the QuoteKPI record with the given id.","operationId":"QuoteKPIs.delete","summary":"QuoteKPIs.delete","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteKPI record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the QuoteKPI record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the QuoteKPI record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"QuoteKPIs.update","summary":"QuoteKPIs.update","tags":["Quote"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateQuoteKPIInput"}}}},"responses":{"200":{"description":"The changed QuoteKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteKPIs":{"get":{"description":"Returns a page of QuoteKPI records, optionally filtered, sorted and limited to selected fields.","operationId":"QuoteKPIs.list","summary":"QuoteKPIs.list","tags":["Quote"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of QuoteKPI records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/QuoteKPI"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a QuoteKPI record.","operationId":"QuoteKPIs.create","summary":"QuoteKPIs.create","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createQuoteKPIInput"}}}},"responses":{"201":{"description":"The created QuoteKPI record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteKPI"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteKPIs/batch-delete":{"post":{"description":"Deletes the QuoteKPI records with the given ids.","operationId":"QuoteKPIs.batch_delete","summary":"QuoteKPIs.batch_delete","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteKPIs/batch-modify":{"post":{"description":"Creates or updates QuoteKPI records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"QuoteKPIs.batch_create_or_update","summary":"QuoteKPIs.batch_create_or_update","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchQuoteKPIInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteKPIs/batch-restore":{"post":{"description":"Restores the deleted QuoteKPI records with the given ids.","operationId":"QuoteKPIs.batch_restore","summary":"QuoteKPIs.batch_restore","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteProcesses/{id}":{"get":{"description":"Returns the QuoteProcess record with the given id.","operationId":"QuoteProcesses.get","summary":"QuoteProcesses.get","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteProcess record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The QuoteProcess record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteProcess"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the QuoteProcess record with the given id.","operationId":"QuoteProcesses.delete","summary":"QuoteProcesses.delete","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteProcess record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the QuoteProcess record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the QuoteProcess record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"QuoteProcesses.update","summary":"QuoteProcesses.update","tags":["Quote"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateQuoteProcessInput"}}}},"responses":{"200":{"description":"The changed QuoteProcess record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteProcess"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteProcesses":{"get":{"description":"Returns a page of QuoteProcess records, optionally filtered, sorted and limited to selected fields.","operationId":"QuoteProcesses.list","summary":"QuoteProcesses.list","tags":["Quote"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of QuoteProcess records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/QuoteProcess"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a QuoteProcess record.","operationId":"QuoteProcesses.create","summary":"QuoteProcesses.create","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createQuoteProcessInput"}}}},"responses":{"201":{"description":"The created QuoteProcess record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteProcess"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteProcesses/batch-delete":{"post":{"description":"Deletes the QuoteProcess records with the given ids.","operationId":"QuoteProcesses.batch_delete","summary":"QuoteProcesses.batch_delete","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteProcesses/batch-modify":{"post":{"description":"Creates or updates QuoteProcess records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"QuoteProcesses.batch_create_or_update","summary":"QuoteProcesses.batch_create_or_update","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchQuoteProcessInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteProcesses/batch-restore":{"post":{"description":"Restores the deleted QuoteProcess records with the given ids.","operationId":"QuoteProcesses.batch_restore","summary":"QuoteProcesses.batch_restore","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteSharingClientRelations/{id}":{"get":{"description":"Returns the QuoteSharingClientRelation record with the given id.","operationId":"QuoteSharingClientRelations.get","summary":"QuoteSharingClientRelations.get","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteSharingClientRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The QuoteSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the QuoteSharingClientRelation record with the given id.","operationId":"QuoteSharingClientRelations.delete","summary":"QuoteSharingClientRelations.delete","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteSharingClientRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the QuoteSharingClientRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the QuoteSharingClientRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"QuoteSharingClientRelations.update","summary":"QuoteSharingClientRelations.update","tags":["Quote"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateQuoteSharingClientRelationInput"}}}},"responses":{"200":{"description":"The changed QuoteSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteSharingClientRelations":{"get":{"description":"Returns a page of QuoteSharingClientRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"QuoteSharingClientRelations.list","summary":"QuoteSharingClientRelations.list","tags":["Quote"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of QuoteSharingClientRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/QuoteSharingClientRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a QuoteSharingClientRelation record.","operationId":"QuoteSharingClientRelations.create","summary":"QuoteSharingClientRelations.create","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createQuoteSharingClientRelationInput"}}}},"responses":{"201":{"description":"The created QuoteSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteSharingClientRelations/batch-delete":{"post":{"description":"Deletes the QuoteSharingClientRelation records with the given ids.","operationId":"QuoteSharingClientRelations.batch_delete","summary":"QuoteSharingClientRelations.batch_delete","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteSharingClientRelations/batch-modify":{"post":{"description":"Creates or updates QuoteSharingClientRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"QuoteSharingClientRelations.batch_create_or_update","summary":"QuoteSharingClientRelations.batch_create_or_update","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchQuoteSharingClientRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteSharingClientRelations/batch-restore":{"post":{"description":"Restores the deleted QuoteSharingClientRelation records with the given ids.","operationId":"QuoteSharingClientRelations.batch_restore","summary":"QuoteSharingClientRelations.batch_restore","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteSharingSalesUnitRelations/{id}":{"get":{"description":"Returns the QuoteSharingSalesUnitRelation record with the given id.","operationId":"QuoteSharingSalesUnitRelations.get","summary":"QuoteSharingSalesUnitRelations.get","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteSharingSalesUnitRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The QuoteSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the QuoteSharingSalesUnitRelation record with the given id.","operationId":"QuoteSharingSalesUnitRelations.delete","summary":"QuoteSharingSalesUnitRelations.delete","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteSharingSalesUnitRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the QuoteSharingSalesUnitRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the QuoteSharingSalesUnitRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"QuoteSharingSalesUnitRelations.update","summary":"QuoteSharingSalesUnitRelations.update","tags":["Quote"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateQuoteSharingSalesUnitRelationInput"}}}},"responses":{"200":{"description":"The changed QuoteSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteSharingSalesUnitRelations":{"get":{"description":"Returns a page of QuoteSharingSalesUnitRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"QuoteSharingSalesUnitRelations.list","summary":"QuoteSharingSalesUnitRelations.list","tags":["Quote"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of QuoteSharingSalesUnitRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/QuoteSharingSalesUnitRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a QuoteSharingSalesUnitRelation record.","operationId":"QuoteSharingSalesUnitRelations.create","summary":"QuoteSharingSalesUnitRelations.create","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createQuoteSharingSalesUnitRelationInput"}}}},"responses":{"201":{"description":"The created QuoteSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteSharingSalesUnitRelations/batch-delete":{"post":{"description":"Deletes the QuoteSharingSalesUnitRelation records with the given ids.","operationId":"QuoteSharingSalesUnitRelations.batch_delete","summary":"QuoteSharingSalesUnitRelations.batch_delete","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteSharingSalesUnitRelations/batch-modify":{"post":{"description":"Creates or updates QuoteSharingSalesUnitRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"QuoteSharingSalesUnitRelations.batch_create_or_update","summary":"QuoteSharingSalesUnitRelations.batch_create_or_update","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchQuoteSharingSalesUnitRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteSharingSalesUnitRelations/batch-restore":{"post":{"description":"Restores the deleted QuoteSharingSalesUnitRelation records with the given ids.","operationId":"QuoteSharingSalesUnitRelations.batch_restore","summary":"QuoteSharingSalesUnitRelations.batch_restore","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteTypes/{id}":{"get":{"description":"Returns the QuoteType record with the given id.","operationId":"QuoteTypes.get","summary":"QuoteTypes.get","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The QuoteType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the QuoteType record with the given id.","operationId":"QuoteTypes.delete","summary":"QuoteTypes.delete","tags":["Quote"],"parameters":[{"name":"id","in":"path","description":"Id of the QuoteType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the QuoteType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the QuoteType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"QuoteTypes.update","summary":"QuoteTypes.update","tags":["Quote"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateQuoteTypeInput"}}}},"responses":{"200":{"description":"The changed QuoteType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteTypes":{"get":{"description":"Returns a page of QuoteType records, optionally filtered, sorted and limited to selected fields.","operationId":"QuoteTypes.list","summary":"QuoteTypes.list","tags":["Quote"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of QuoteType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/QuoteType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a QuoteType record.","operationId":"QuoteTypes.create","summary":"QuoteTypes.create","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createQuoteTypeInput"}}}},"responses":{"201":{"description":"The created QuoteType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/QuoteType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteTypes/batch-delete":{"post":{"description":"Deletes the QuoteType records with the given ids.","operationId":"QuoteTypes.batch_delete","summary":"QuoteTypes.batch_delete","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteTypes/batch-modify":{"post":{"description":"Creates or updates QuoteType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"QuoteTypes.batch_create_or_update","summary":"QuoteTypes.batch_create_or_update","tags":["Quote"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchQuoteTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/QuoteTypes/batch-restore":{"post":{"description":"Restores the deleted QuoteType records with the given ids.","operationId":"QuoteTypes.batch_restore","summary":"QuoteTypes.batch_restore","tags":["Quote"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Reports/{id}":{"get":{"description":"Returns the Report record with the given id.","operationId":"Reports.get","summary":"Reports.get","tags":["Report"],"parameters":[{"name":"id","in":"path","description":"Id of the Report record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Report record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Report"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Reports":{"get":{"description":"Returns a page of Report records, optionally filtered, sorted and limited to selected fields.","operationId":"Reports.list","summary":"Reports.list","tags":["Report"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Report records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Report"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ReportFolders/{id}":{"get":{"description":"Returns the ReportFolder record with the given id.","operationId":"ReportFolders.get","summary":"ReportFolders.get","tags":["Report"],"parameters":[{"name":"id","in":"path","description":"Id of the ReportFolder record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ReportFolder record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ReportFolder"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ReportFolders":{"get":{"description":"Returns a page of ReportFolder records, optionally filtered, sorted and limited to selected fields.","operationId":"ReportFolders.list","summary":"ReportFolders.list","tags":["Report"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ReportFolder records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ReportFolder"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ReportSchedules/{id}":{"get":{"description":"Returns the ReportSchedule record with the given id.","operationId":"ReportSchedules.get","summary":"ReportSchedules.get","tags":["Report"],"parameters":[{"name":"id","in":"path","description":"Id of the ReportSchedule record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ReportSchedule record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ReportSchedule"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the ReportSchedule record with the given id.","operationId":"ReportSchedules.delete","summary":"ReportSchedules.delete","tags":["Report"],"parameters":[{"name":"id","in":"path","description":"Id of the ReportSchedule record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the ReportSchedule record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the ReportSchedule record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"ReportSchedules.update","summary":"ReportSchedules.update","tags":["Report"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateReportScheduleInput"}}}},"responses":{"200":{"description":"The changed ReportSchedule record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ReportSchedule"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ReportSchedules":{"get":{"description":"Returns a page of ReportSchedule records, optionally filtered, sorted and limited to selected fields.","operationId":"ReportSchedules.list","summary":"ReportSchedules.list","tags":["Report"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ReportSchedule records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ReportSchedule"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a ReportSchedule record.","operationId":"ReportSchedules.create","summary":"ReportSchedules.create","tags":["Report"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createReportScheduleInput"}}}},"responses":{"201":{"description":"The created ReportSchedule record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ReportSchedule"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ReportSchedules/batch-delete":{"post":{"description":"Deletes the ReportSchedule records with the given ids.","operationId":"ReportSchedules.batch_delete","summary":"ReportSchedules.batch_delete","tags":["Report"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ReportSchedules/batch-modify":{"post":{"description":"Creates or updates ReportSchedule records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"ReportSchedules.batch_create_or_update","summary":"ReportSchedules.batch_create_or_update","tags":["Report"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchReportScheduleInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ReportSchedules/batch-restore":{"post":{"description":"Restores the deleted ReportSchedule records with the given ids.","operationId":"ReportSchedules.batch_restore","summary":"ReportSchedules.batch_restore","tags":["Report"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ReportSharingClientRelations/{id}":{"get":{"description":"Returns the ReportSharingClientRelation record with the given id.","operationId":"ReportSharingClientRelations.get","summary":"ReportSharingClientRelations.get","tags":["Report"],"parameters":[{"name":"id","in":"path","description":"Id of the ReportSharingClientRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ReportSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ReportSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ReportSharingClientRelations":{"get":{"description":"Returns a page of ReportSharingClientRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ReportSharingClientRelations.list","summary":"ReportSharingClientRelations.list","tags":["Report"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ReportSharingClientRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ReportSharingClientRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ReportSharingSalesUnitRelations/{id}":{"get":{"description":"Returns the ReportSharingSalesUnitRelation record with the given id.","operationId":"ReportSharingSalesUnitRelations.get","summary":"ReportSharingSalesUnitRelations.get","tags":["Report"],"parameters":[{"name":"id","in":"path","description":"Id of the ReportSharingSalesUnitRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The ReportSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/ReportSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/ReportSharingSalesUnitRelations":{"get":{"description":"Returns a page of ReportSharingSalesUnitRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"ReportSharingSalesUnitRelations.list","summary":"ReportSharingSalesUnitRelations.list","tags":["Report"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of ReportSharingSalesUnitRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/ReportSharingSalesUnitRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SalesRoles/{id}":{"get":{"description":"Returns the SalesRole record with the given id.","operationId":"SalesRoles.get","summary":"SalesRoles.get","tags":["SalesRole"],"parameters":[{"name":"id","in":"path","description":"Id of the SalesRole record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The SalesRole record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/SalesRole"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the SalesRole record with the given id.","operationId":"SalesRoles.delete","summary":"SalesRoles.delete","tags":["SalesRole"],"parameters":[{"name":"id","in":"path","description":"Id of the SalesRole record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the SalesRole record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the SalesRole record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"SalesRoles.update","summary":"SalesRoles.update","tags":["SalesRole"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateSalesRoleInput"}}}},"responses":{"200":{"description":"The changed SalesRole record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/SalesRole"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SalesRoles":{"get":{"description":"Returns a page of SalesRole records, optionally filtered, sorted and limited to selected fields.","operationId":"SalesRoles.list","summary":"SalesRoles.list","tags":["SalesRole"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of SalesRole records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/SalesRole"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a SalesRole record.","operationId":"SalesRoles.create","summary":"SalesRoles.create","tags":["SalesRole"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createSalesRoleInput"}}}},"responses":{"201":{"description":"The created SalesRole record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/SalesRole"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SalesRoles/batch-delete":{"post":{"description":"Deletes the SalesRole records with the given ids.","operationId":"SalesRoles.batch_delete","summary":"SalesRoles.batch_delete","tags":["SalesRole"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SalesRoles/batch-modify":{"post":{"description":"Creates or updates SalesRole records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"SalesRoles.batch_create_or_update","summary":"SalesRoles.batch_create_or_update","tags":["SalesRole"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchSalesRoleInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SalesRoles/batch-restore":{"post":{"description":"Restores the deleted SalesRole records with the given ids.","operationId":"SalesRoles.batch_restore","summary":"SalesRoles.batch_restore","tags":["SalesRole"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SalesUnits/{id}":{"get":{"description":"Returns the SalesUnit record with the given id.","operationId":"SalesUnits.get","summary":"SalesUnits.get","tags":["SalesUnit"],"parameters":[{"name":"id","in":"path","description":"Id of the SalesUnit record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The SalesUnit record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/SalesUnit"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the SalesUnit record with the given id.","operationId":"SalesUnits.delete","summary":"SalesUnits.delete","tags":["SalesUnit"],"parameters":[{"name":"id","in":"path","description":"Id of the SalesUnit record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the SalesUnit record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the SalesUnit record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"SalesUnits.update","summary":"SalesUnits.update","tags":["SalesUnit"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateSalesUnitInput"}}}},"responses":{"200":{"description":"The changed SalesUnit record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/SalesUnit"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SalesUnits":{"get":{"description":"Returns a page of SalesUnit records, optionally filtered, sorted and limited to selected fields.","operationId":"SalesUnits.list","summary":"SalesUnits.list","tags":["SalesUnit"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of SalesUnit records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/SalesUnit"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a SalesUnit record.","operationId":"SalesUnits.create","summary":"SalesUnits.create","tags":["SalesUnit"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createSalesUnitInput"}}}},"responses":{"201":{"description":"The created SalesUnit record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/SalesUnit"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SalesUnits/batch-delete":{"post":{"description":"Deletes the SalesUnit records with the given ids.","operationId":"SalesUnits.batch_delete","summary":"SalesUnits.batch_delete","tags":["SalesUnit"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SalesUnits/batch-modify":{"post":{"description":"Creates or updates SalesUnit records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"SalesUnits.batch_create_or_update","summary":"SalesUnits.batch_create_or_update","tags":["SalesUnit"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchSalesUnitInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SalesUnits/batch-restore":{"post":{"description":"Restores the deleted SalesUnit records with the given ids.","operationId":"SalesUnits.batch_restore","summary":"SalesUnits.batch_restore","tags":["SalesUnit"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SalesUnitClientRelations/{id}":{"get":{"description":"Returns the SalesUnitClientRelation record with the given id.","operationId":"SalesUnitClientRelations.get","summary":"SalesUnitClientRelations.get","tags":["SalesUnit"],"parameters":[{"name":"id","in":"path","description":"Id of the SalesUnitClientRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The SalesUnitClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/SalesUnitClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SalesUnitClientRelations":{"get":{"description":"Returns a page of SalesUnitClientRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"SalesUnitClientRelations.list","summary":"SalesUnitClientRelations.list","tags":["SalesUnit"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of SalesUnitClientRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/SalesUnitClientRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Solutions/{id}":{"get":{"description":"Returns the Solution record with the given id.","operationId":"Solutions.get","summary":"Solutions.get","tags":["Solution"],"parameters":[{"name":"id","in":"path","description":"Id of the Solution record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Solution record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Solution"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Solution record with the given id.","operationId":"Solutions.delete","summary":"Solutions.delete","tags":["Solution"],"parameters":[{"name":"id","in":"path","description":"Id of the Solution record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Solution record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Solution record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Solutions.update","summary":"Solutions.update","tags":["Solution"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateSolutionInput"}}}},"responses":{"200":{"description":"The changed Solution record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Solution"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Solutions":{"get":{"description":"Returns a page of Solution records, optionally filtered, sorted and limited to selected fields.","operationId":"Solutions.list","summary":"Solutions.list","tags":["Solution"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Solution records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Solution"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Solution record.","operationId":"Solutions.create","summary":"Solutions.create","tags":["Solution"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createSolutionInput"}}}},"responses":{"201":{"description":"The created Solution record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Solution"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Solutions/batch-delete":{"post":{"description":"Deletes the Solution records with the given ids.","operationId":"Solutions.batch_delete","summary":"Solutions.batch_delete","tags":["Solution"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Solutions/batch-modify":{"post":{"description":"Creates or updates Solution records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Solutions.batch_create_or_update","summary":"Solutions.batch_create_or_update","tags":["Solution"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchSolutionInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Solutions/batch-restore":{"post":{"description":"Restores the deleted Solution records with the given ids.","operationId":"Solutions.batch_restore","summary":"Solutions.batch_restore","tags":["Solution"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SolutionTemplates/{id}":{"get":{"description":"Returns the SolutionTemplate record with the given id.","operationId":"SolutionTemplates.get","summary":"SolutionTemplates.get","tags":["Solution"],"parameters":[{"name":"id","in":"path","description":"Id of the SolutionTemplate record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The SolutionTemplate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/SolutionTemplate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the SolutionTemplate record with the given id.","operationId":"SolutionTemplates.delete","summary":"SolutionTemplates.delete","tags":["Solution"],"parameters":[{"name":"id","in":"path","description":"Id of the SolutionTemplate record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the SolutionTemplate record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the SolutionTemplate record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"SolutionTemplates.update","summary":"SolutionTemplates.update","tags":["Solution"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateSolutionTemplateInput"}}}},"responses":{"200":{"description":"The changed SolutionTemplate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/SolutionTemplate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SolutionTemplates":{"get":{"description":"Returns a page of SolutionTemplate records, optionally filtered, sorted and limited to selected fields.","operationId":"SolutionTemplates.list","summary":"SolutionTemplates.list","tags":["Solution"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of SolutionTemplate records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/SolutionTemplate"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a SolutionTemplate record.","operationId":"SolutionTemplates.create","summary":"SolutionTemplates.create","tags":["Solution"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createSolutionTemplateInput"}}}},"responses":{"201":{"description":"The created SolutionTemplate record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/SolutionTemplate"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SolutionTemplates/batch-delete":{"post":{"description":"Deletes the SolutionTemplate records with the given ids.","operationId":"SolutionTemplates.batch_delete","summary":"SolutionTemplates.batch_delete","tags":["Solution"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SolutionTemplates/batch-modify":{"post":{"description":"Creates or updates SolutionTemplate records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"SolutionTemplates.batch_create_or_update","summary":"SolutionTemplates.batch_create_or_update","tags":["Solution"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchSolutionTemplateInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/SolutionTemplates/batch-restore":{"post":{"description":"Restores the deleted SolutionTemplate records with the given ids.","operationId":"SolutionTemplates.batch_restore","summary":"SolutionTemplates.batch_restore","tags":["Solution"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Steps/{id}":{"get":{"description":"Returns the Step record with the given id.","operationId":"Steps.get","summary":"Steps.get","tags":["Step"],"parameters":[{"name":"id","in":"path","description":"Id of the Step record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Step record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Step"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Step record with the given id.","operationId":"Steps.delete","summary":"Steps.delete","tags":["Step"],"parameters":[{"name":"id","in":"path","description":"Id of the Step record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Step record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Step record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Steps.update","summary":"Steps.update","tags":["Step"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateStepInput"}}}},"responses":{"200":{"description":"The changed Step record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Step"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Steps":{"get":{"description":"Returns a page of Step records, optionally filtered, sorted and limited to selected fields.","operationId":"Steps.list","summary":"Steps.list","tags":["Step"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Step records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Step"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Step record.","operationId":"Steps.create","summary":"Steps.create","tags":["Step"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createStepInput"}}}},"responses":{"201":{"description":"The created Step record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Step"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Steps/batch-delete":{"post":{"description":"Deletes the Step records with the given ids.","operationId":"Steps.batch_delete","summary":"Steps.batch_delete","tags":["Step"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Steps/batch-modify":{"post":{"description":"Creates or updates Step records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Steps.batch_create_or_update","summary":"Steps.batch_create_or_update","tags":["Step"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchStepInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Steps/batch-restore":{"post":{"description":"Restores the deleted Step records with the given ids.","operationId":"Steps.batch_restore","summary":"Steps.batch_restore","tags":["Step"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/StepChecklists/{id}":{"get":{"description":"Returns the StepChecklist record with the given id.","operationId":"StepChecklists.get","summary":"StepChecklists.get","tags":["Step"],"parameters":[{"name":"id","in":"path","description":"Id of the StepChecklist record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The StepChecklist record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/StepChecklist"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the StepChecklist record with the given id.","operationId":"StepChecklists.delete","summary":"StepChecklists.delete","tags":["Step"],"parameters":[{"name":"id","in":"path","description":"Id of the StepChecklist record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the StepChecklist record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the StepChecklist record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"StepChecklists.update","summary":"StepChecklists.update","tags":["Step"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateStepChecklistInput"}}}},"responses":{"200":{"description":"The changed StepChecklist record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/StepChecklist"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/StepChecklists":{"get":{"description":"Returns a page of StepChecklist records, optionally filtered, sorted and limited to selected fields.","operationId":"StepChecklists.list","summary":"StepChecklists.list","tags":["Step"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of StepChecklist records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/StepChecklist"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a StepChecklist record.","operationId":"StepChecklists.create","summary":"StepChecklists.create","tags":["Step"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createStepChecklistInput"}}}},"responses":{"201":{"description":"The created StepChecklist record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/StepChecklist"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/StepChecklists/batch-delete":{"post":{"description":"Deletes the StepChecklist records with the given ids.","operationId":"StepChecklists.batch_delete","summary":"StepChecklists.batch_delete","tags":["Step"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/StepChecklists/batch-modify":{"post":{"description":"Creates or updates StepChecklist records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"StepChecklists.batch_create_or_update","summary":"StepChecklists.batch_create_or_update","tags":["Step"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchStepChecklistInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/StepChecklists/batch-restore":{"post":{"description":"Restores the deleted StepChecklist records with the given ids.","operationId":"StepChecklists.batch_restore","summary":"StepChecklists.batch_restore","tags":["Step"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/StepChecklistSalesRoleRelations/{id}":{"get":{"description":"Returns the StepChecklistSalesRoleRelation record with the given id.","operationId":"StepChecklistSalesRoleRelations.get","summary":"StepChecklistSalesRoleRelations.get","tags":["Step"],"parameters":[{"name":"id","in":"path","description":"Id of the StepChecklistSalesRoleRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The StepChecklistSalesRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/StepChecklistSalesRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the StepChecklistSalesRoleRelation record with the given id.","operationId":"StepChecklistSalesRoleRelations.delete","summary":"StepChecklistSalesRoleRelations.delete","tags":["Step"],"parameters":[{"name":"id","in":"path","description":"Id of the StepChecklistSalesRoleRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the StepChecklistSalesRoleRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the StepChecklistSalesRoleRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"StepChecklistSalesRoleRelations.update","summary":"StepChecklistSalesRoleRelations.update","tags":["Step"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateStepChecklistSalesRoleRelationInput"}}}},"responses":{"200":{"description":"The changed StepChecklistSalesRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/StepChecklistSalesRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/StepChecklistSalesRoleRelations":{"get":{"description":"Returns a page of StepChecklistSalesRoleRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"StepChecklistSalesRoleRelations.list","summary":"StepChecklistSalesRoleRelations.list","tags":["Step"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of StepChecklistSalesRoleRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/StepChecklistSalesRoleRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a StepChecklistSalesRoleRelation record.","operationId":"StepChecklistSalesRoleRelations.create","summary":"StepChecklistSalesRoleRelations.create","tags":["Step"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createStepChecklistSalesRoleRelationInput"}}}},"responses":{"201":{"description":"The created StepChecklistSalesRoleRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/StepChecklistSalesRoleRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/StepChecklistSalesRoleRelations/batch-delete":{"post":{"description":"Deletes the StepChecklistSalesRoleRelation records with the given ids.","operationId":"StepChecklistSalesRoleRelations.batch_delete","summary":"StepChecklistSalesRoleRelations.batch_delete","tags":["Step"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/StepChecklistSalesRoleRelations/batch-modify":{"post":{"description":"Creates or updates StepChecklistSalesRoleRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"StepChecklistSalesRoleRelations.batch_create_or_update","summary":"StepChecklistSalesRoleRelations.batch_create_or_update","tags":["Step"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchStepChecklistSalesRoleRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/StepChecklistSalesRoleRelations/batch-restore":{"post":{"description":"Restores the deleted StepChecklistSalesRoleRelation records with the given ids.","operationId":"StepChecklistSalesRoleRelations.batch_restore","summary":"StepChecklistSalesRoleRelations.batch_restore","tags":["Step"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Tags/{id}":{"get":{"description":"Returns the Tag record with the given id.","operationId":"Tags.get","summary":"Tags.get","tags":["Tag"],"parameters":[{"name":"id","in":"path","description":"Id of the Tag record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Tag record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Tag"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Tag record with the given id.","operationId":"Tags.delete","summary":"Tags.delete","tags":["Tag"],"parameters":[{"name":"id","in":"path","description":"Id of the Tag record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Tag record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Tag record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Tags.update","summary":"Tags.update","tags":["Tag"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateTagInput"}}}},"responses":{"200":{"description":"The changed Tag record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Tag"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Tags":{"get":{"description":"Returns a page of Tag records, optionally filtered, sorted and limited to selected fields.","operationId":"Tags.list","summary":"Tags.list","tags":["Tag"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Tag records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Tag"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Tag record.","operationId":"Tags.create","summary":"Tags.create","tags":["Tag"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createTagInput"}}}},"responses":{"201":{"description":"The created Tag record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Tag"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Tags/batch-delete":{"post":{"description":"Deletes the Tag records with the given ids.","operationId":"Tags.batch_delete","summary":"Tags.batch_delete","tags":["Tag"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Tags/batch-modify":{"post":{"description":"Creates or updates Tag records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Tags.batch_create_or_update","summary":"Tags.batch_create_or_update","tags":["Tag"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchTagInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Tags/batch-restore":{"post":{"description":"Restores the deleted Tag records with the given ids.","operationId":"Tags.batch_restore","summary":"Tags.batch_restore","tags":["Tag"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TagRelations/{id}":{"get":{"description":"Returns the TagRelation record with the given id.","operationId":"TagRelations.get","summary":"TagRelations.get","tags":["Tag"],"parameters":[{"name":"id","in":"path","description":"Id of the TagRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The TagRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TagRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the TagRelation record with the given id.","operationId":"TagRelations.delete","summary":"TagRelations.delete","tags":["Tag"],"parameters":[{"name":"id","in":"path","description":"Id of the TagRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the TagRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the TagRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"TagRelations.update","summary":"TagRelations.update","tags":["Tag"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateTagRelationInput"}}}},"responses":{"200":{"description":"The changed TagRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TagRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TagRelations":{"get":{"description":"Returns a page of TagRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"TagRelations.list","summary":"TagRelations.list","tags":["Tag"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of TagRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/TagRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a TagRelation record.","operationId":"TagRelations.create","summary":"TagRelations.create","tags":["Tag"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createTagRelationInput"}}}},"responses":{"201":{"description":"The created TagRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TagRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TagRelations/batch-delete":{"post":{"description":"Deletes the TagRelation records with the given ids.","operationId":"TagRelations.batch_delete","summary":"TagRelations.batch_delete","tags":["Tag"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TagRelations/batch-modify":{"post":{"description":"Creates or updates TagRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"TagRelations.batch_create_or_update","summary":"TagRelations.batch_create_or_update","tags":["Tag"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchTagRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TagRelations/batch-restore":{"post":{"description":"Restores the deleted TagRelation records with the given ids.","operationId":"TagRelations.batch_restore","summary":"TagRelations.batch_restore","tags":["Tag"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Targets/{id}":{"get":{"description":"Returns the Target record with the given id.","operationId":"Targets.get","summary":"Targets.get","tags":["Target"],"parameters":[{"name":"id","in":"path","description":"Id of the Target record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Target record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Target"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Target record with the given id.","operationId":"Targets.delete","summary":"Targets.delete","tags":["Target"],"parameters":[{"name":"id","in":"path","description":"Id of the Target record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Target record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Target record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Targets.update","summary":"Targets.update","tags":["Target"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateTargetInput"}}}},"responses":{"200":{"description":"The changed Target record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Target"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Targets":{"get":{"description":"Returns a page of Target records, optionally filtered, sorted and limited to selected fields.","operationId":"Targets.list","summary":"Targets.list","tags":["Target"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Target records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Target"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Target record.","operationId":"Targets.create","summary":"Targets.create","tags":["Target"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createTargetInput"}}}},"responses":{"201":{"description":"The created Target record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Target"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Targets/batch-delete":{"post":{"description":"Deletes the Target records with the given ids.","operationId":"Targets.batch_delete","summary":"Targets.batch_delete","tags":["Target"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Targets/batch-modify":{"post":{"description":"Creates or updates Target records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Targets.batch_create_or_update","summary":"Targets.batch_create_or_update","tags":["Target"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchTargetInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Targets/batch-restore":{"post":{"description":"Restores the deleted Target records with the given ids.","operationId":"Targets.batch_restore","summary":"Targets.batch_restore","tags":["Target"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TargetRelations/{id}":{"get":{"description":"Returns the TargetRelation record with the given id.","operationId":"TargetRelations.get","summary":"TargetRelations.get","tags":["Target"],"parameters":[{"name":"id","in":"path","description":"Id of the TargetRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The TargetRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TargetRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the TargetRelation record with the given id.","operationId":"TargetRelations.delete","summary":"TargetRelations.delete","tags":["Target"],"parameters":[{"name":"id","in":"path","description":"Id of the TargetRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the TargetRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the TargetRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"TargetRelations.update","summary":"TargetRelations.update","tags":["Target"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateTargetRelationInput"}}}},"responses":{"200":{"description":"The changed TargetRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TargetRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TargetRelations":{"get":{"description":"Returns a page of TargetRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"TargetRelations.list","summary":"TargetRelations.list","tags":["Target"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of TargetRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/TargetRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a TargetRelation record.","operationId":"TargetRelations.create","summary":"TargetRelations.create","tags":["Target"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createTargetRelationInput"}}}},"responses":{"201":{"description":"The created TargetRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TargetRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TargetRelations/batch-delete":{"post":{"description":"Deletes the TargetRelation records with the given ids.","operationId":"TargetRelations.batch_delete","summary":"TargetRelations.batch_delete","tags":["Target"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TargetRelations/batch-modify":{"post":{"description":"Creates or updates TargetRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"TargetRelations.batch_create_or_update","summary":"TargetRelations.batch_create_or_update","tags":["Target"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchTargetRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TargetRelations/batch-restore":{"post":{"description":"Restores the deleted TargetRelation records with the given ids.","operationId":"TargetRelations.batch_restore","summary":"TargetRelations.batch_restore","tags":["Target"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Tasks/{id}":{"get":{"description":"Returns the Task record with the given id.","operationId":"Tasks.get","summary":"Tasks.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the Task record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Task record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Task"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Task record with the given id.","operationId":"Tasks.delete","summary":"Tasks.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the Task record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Task record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Task record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Tasks.update","summary":"Tasks.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateTaskInput"}}}},"responses":{"200":{"description":"The changed Task record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Task"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Tasks":{"get":{"description":"Returns a page of Task records, optionally filtered, sorted and limited to selected fields.","operationId":"Tasks.list","summary":"Tasks.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Task records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Task"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Task record.","operationId":"Tasks.create","summary":"Tasks.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createTaskInput"}}}},"responses":{"201":{"description":"The created Task record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Task"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Tasks/batch-delete":{"post":{"description":"Deletes the Task records with the given ids.","operationId":"Tasks.batch_delete","summary":"Tasks.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Tasks/batch-modify":{"post":{"description":"Creates or updates Task records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Tasks.batch_create_or_update","summary":"Tasks.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchTaskInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Tasks/batch-restore":{"post":{"description":"Restores the deleted Task records with the given ids.","operationId":"Tasks.batch_restore","summary":"Tasks.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskRecurrences/{id}":{"get":{"description":"Returns the TaskRecurrence record with the given id.","operationId":"TaskRecurrences.get","summary":"TaskRecurrences.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the TaskRecurrence record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The TaskRecurrence record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskRecurrence"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the TaskRecurrence record with the given id.","operationId":"TaskRecurrences.delete","summary":"TaskRecurrences.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the TaskRecurrence record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the TaskRecurrence record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the TaskRecurrence record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"TaskRecurrences.update","summary":"TaskRecurrences.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateTaskRecurrenceInput"}}}},"responses":{"200":{"description":"The changed TaskRecurrence record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskRecurrence"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskRecurrences":{"get":{"description":"Returns a page of TaskRecurrence records, optionally filtered, sorted and limited to selected fields.","operationId":"TaskRecurrences.list","summary":"TaskRecurrences.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of TaskRecurrence records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/TaskRecurrence"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a TaskRecurrence record.","operationId":"TaskRecurrences.create","summary":"TaskRecurrences.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createTaskRecurrenceInput"}}}},"responses":{"201":{"description":"The created TaskRecurrence record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskRecurrence"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskRecurrences/batch-delete":{"post":{"description":"Deletes the TaskRecurrence records with the given ids.","operationId":"TaskRecurrences.batch_delete","summary":"TaskRecurrences.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskRecurrences/batch-modify":{"post":{"description":"Creates or updates TaskRecurrence records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"TaskRecurrences.batch_create_or_update","summary":"TaskRecurrences.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchTaskRecurrenceInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskRecurrences/batch-restore":{"post":{"description":"Restores the deleted TaskRecurrence records with the given ids.","operationId":"TaskRecurrences.batch_restore","summary":"TaskRecurrences.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskReminders/{id}":{"get":{"description":"Returns the TaskReminder record with the given id.","operationId":"TaskReminders.get","summary":"TaskReminders.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the TaskReminder record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The TaskReminder record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskReminder"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the TaskReminder record with the given id.","operationId":"TaskReminders.delete","summary":"TaskReminders.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the TaskReminder record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the TaskReminder record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the TaskReminder record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"TaskReminders.update","summary":"TaskReminders.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateTaskReminderInput"}}}},"responses":{"200":{"description":"The changed TaskReminder record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskReminder"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskReminders":{"get":{"description":"Returns a page of TaskReminder records, optionally filtered, sorted and limited to selected fields.","operationId":"TaskReminders.list","summary":"TaskReminders.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of TaskReminder records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/TaskReminder"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a TaskReminder record.","operationId":"TaskReminders.create","summary":"TaskReminders.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createTaskReminderInput"}}}},"responses":{"201":{"description":"The created TaskReminder record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskReminder"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskReminders/batch-delete":{"post":{"description":"Deletes the TaskReminder records with the given ids.","operationId":"TaskReminders.batch_delete","summary":"TaskReminders.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskReminders/batch-modify":{"post":{"description":"Creates or updates TaskReminder records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"TaskReminders.batch_create_or_update","summary":"TaskReminders.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchTaskReminderInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskReminders/batch-restore":{"post":{"description":"Restores the deleted TaskReminder records with the given ids.","operationId":"TaskReminders.batch_restore","summary":"TaskReminders.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskSharingClientRelations/{id}":{"get":{"description":"Returns the TaskSharingClientRelation record with the given id.","operationId":"TaskSharingClientRelations.get","summary":"TaskSharingClientRelations.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the TaskSharingClientRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The TaskSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the TaskSharingClientRelation record with the given id.","operationId":"TaskSharingClientRelations.delete","summary":"TaskSharingClientRelations.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the TaskSharingClientRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the TaskSharingClientRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the TaskSharingClientRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"TaskSharingClientRelations.update","summary":"TaskSharingClientRelations.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateTaskSharingClientRelationInput"}}}},"responses":{"200":{"description":"The changed TaskSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskSharingClientRelations":{"get":{"description":"Returns a page of TaskSharingClientRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"TaskSharingClientRelations.list","summary":"TaskSharingClientRelations.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of TaskSharingClientRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/TaskSharingClientRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a TaskSharingClientRelation record.","operationId":"TaskSharingClientRelations.create","summary":"TaskSharingClientRelations.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createTaskSharingClientRelationInput"}}}},"responses":{"201":{"description":"The created TaskSharingClientRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskSharingClientRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskSharingClientRelations/batch-delete":{"post":{"description":"Deletes the TaskSharingClientRelation records with the given ids.","operationId":"TaskSharingClientRelations.batch_delete","summary":"TaskSharingClientRelations.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskSharingClientRelations/batch-modify":{"post":{"description":"Creates or updates TaskSharingClientRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"TaskSharingClientRelations.batch_create_or_update","summary":"TaskSharingClientRelations.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchTaskSharingClientRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskSharingClientRelations/batch-restore":{"post":{"description":"Restores the deleted TaskSharingClientRelation records with the given ids.","operationId":"TaskSharingClientRelations.batch_restore","summary":"TaskSharingClientRelations.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskSharingSalesUnitRelations/{id}":{"get":{"description":"Returns the TaskSharingSalesUnitRelation record with the given id.","operationId":"TaskSharingSalesUnitRelations.get","summary":"TaskSharingSalesUnitRelations.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the TaskSharingSalesUnitRelation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The TaskSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the TaskSharingSalesUnitRelation record with the given id.","operationId":"TaskSharingSalesUnitRelations.delete","summary":"TaskSharingSalesUnitRelations.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the TaskSharingSalesUnitRelation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the TaskSharingSalesUnitRelation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the TaskSharingSalesUnitRelation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"TaskSharingSalesUnitRelations.update","summary":"TaskSharingSalesUnitRelations.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateTaskSharingSalesUnitRelationInput"}}}},"responses":{"200":{"description":"The changed TaskSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskSharingSalesUnitRelations":{"get":{"description":"Returns a page of TaskSharingSalesUnitRelation records, optionally filtered, sorted and limited to selected fields.","operationId":"TaskSharingSalesUnitRelations.list","summary":"TaskSharingSalesUnitRelations.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of TaskSharingSalesUnitRelation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/TaskSharingSalesUnitRelation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a TaskSharingSalesUnitRelation record.","operationId":"TaskSharingSalesUnitRelations.create","summary":"TaskSharingSalesUnitRelations.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createTaskSharingSalesUnitRelationInput"}}}},"responses":{"201":{"description":"The created TaskSharingSalesUnitRelation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskSharingSalesUnitRelation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskSharingSalesUnitRelations/batch-delete":{"post":{"description":"Deletes the TaskSharingSalesUnitRelation records with the given ids.","operationId":"TaskSharingSalesUnitRelations.batch_delete","summary":"TaskSharingSalesUnitRelations.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskSharingSalesUnitRelations/batch-modify":{"post":{"description":"Creates or updates TaskSharingSalesUnitRelation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"TaskSharingSalesUnitRelations.batch_create_or_update","summary":"TaskSharingSalesUnitRelations.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchTaskSharingSalesUnitRelationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskSharingSalesUnitRelations/batch-restore":{"post":{"description":"Restores the deleted TaskSharingSalesUnitRelation records with the given ids.","operationId":"TaskSharingSalesUnitRelations.batch_restore","summary":"TaskSharingSalesUnitRelations.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskTypes/{id}":{"get":{"description":"Returns the TaskType record with the given id.","operationId":"TaskTypes.get","summary":"TaskTypes.get","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the TaskType record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The TaskType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the TaskType record with the given id.","operationId":"TaskTypes.delete","summary":"TaskTypes.delete","tags":["Activity"],"parameters":[{"name":"id","in":"path","description":"Id of the TaskType record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the TaskType record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the TaskType record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"TaskTypes.update","summary":"TaskTypes.update","tags":["Activity"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateTaskTypeInput"}}}},"responses":{"200":{"description":"The changed TaskType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskTypes":{"get":{"description":"Returns a page of TaskType records, optionally filtered, sorted and limited to selected fields.","operationId":"TaskTypes.list","summary":"TaskTypes.list","tags":["Activity"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of TaskType records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/TaskType"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a TaskType record.","operationId":"TaskTypes.create","summary":"TaskTypes.create","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createTaskTypeInput"}}}},"responses":{"201":{"description":"The created TaskType record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TaskType"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskTypes/batch-delete":{"post":{"description":"Deletes the TaskType records with the given ids.","operationId":"TaskTypes.batch_delete","summary":"TaskTypes.batch_delete","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskTypes/batch-modify":{"post":{"description":"Creates or updates TaskType records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"TaskTypes.batch_create_or_update","summary":"TaskTypes.batch_create_or_update","tags":["Activity"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchTaskTypeInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TaskTypes/batch-restore":{"post":{"description":"Restores the deleted TaskType records with the given ids.","operationId":"TaskTypes.batch_restore","summary":"TaskTypes.batch_restore","tags":["Activity"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessages/{id}":{"get":{"description":"Returns the TextMessage record with the given id.","operationId":"TextMessages.get","summary":"TextMessages.get","tags":["Text Message"],"parameters":[{"name":"id","in":"path","description":"Id of the TextMessage record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The TextMessage record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TextMessage"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the TextMessage record with the given id.","operationId":"TextMessages.delete","summary":"TextMessages.delete","tags":["Text Message"],"parameters":[{"name":"id","in":"path","description":"Id of the TextMessage record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the TextMessage record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the TextMessage record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"TextMessages.update","summary":"TextMessages.update","tags":["Text Message"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateTextMessageInput"}}}},"responses":{"200":{"description":"The changed TextMessage record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TextMessage"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessages":{"get":{"description":"Returns a page of TextMessage records, optionally filtered, sorted and limited to selected fields.","operationId":"TextMessages.list","summary":"TextMessages.list","tags":["Text Message"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of TextMessage records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/TextMessage"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a TextMessage record.","operationId":"TextMessages.create","summary":"TextMessages.create","tags":["Text Message"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createTextMessageInput"}}}},"responses":{"201":{"description":"The created TextMessage record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TextMessage"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessages/batch-delete":{"post":{"description":"Deletes the TextMessage records with the given ids.","operationId":"TextMessages.batch_delete","summary":"TextMessages.batch_delete","tags":["Text Message"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessages/batch-modify":{"post":{"description":"Creates or updates TextMessage records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"TextMessages.batch_create_or_update","summary":"TextMessages.batch_create_or_update","tags":["Text Message"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchTextMessageInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessages/batch-restore":{"post":{"description":"Restores the deleted TextMessage records with the given ids.","operationId":"TextMessages.batch_restore","summary":"TextMessages.batch_restore","tags":["Text Message"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessageConversations/{id}":{"get":{"description":"Returns the TextMessageConversation record with the given id.","operationId":"TextMessageConversations.get","summary":"TextMessageConversations.get","tags":["Text Message"],"parameters":[{"name":"id","in":"path","description":"Id of the TextMessageConversation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The TextMessageConversation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TextMessageConversation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the TextMessageConversation record with the given id.","operationId":"TextMessageConversations.delete","summary":"TextMessageConversations.delete","tags":["Text Message"],"parameters":[{"name":"id","in":"path","description":"Id of the TextMessageConversation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the TextMessageConversation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the TextMessageConversation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"TextMessageConversations.update","summary":"TextMessageConversations.update","tags":["Text Message"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateTextMessageConversationInput"}}}},"responses":{"200":{"description":"The changed TextMessageConversation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TextMessageConversation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessageConversations":{"get":{"description":"Returns a page of TextMessageConversation records, optionally filtered, sorted and limited to selected fields.","operationId":"TextMessageConversations.list","summary":"TextMessageConversations.list","tags":["Text Message"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of TextMessageConversation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/TextMessageConversation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a TextMessageConversation record.","operationId":"TextMessageConversations.create","summary":"TextMessageConversations.create","tags":["Text Message"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createTextMessageConversationInput"}}}},"responses":{"201":{"description":"The created TextMessageConversation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TextMessageConversation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessageConversations/batch-delete":{"post":{"description":"Deletes the TextMessageConversation records with the given ids.","operationId":"TextMessageConversations.batch_delete","summary":"TextMessageConversations.batch_delete","tags":["Text Message"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessageConversations/batch-modify":{"post":{"description":"Creates or updates TextMessageConversation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"TextMessageConversations.batch_create_or_update","summary":"TextMessageConversations.batch_create_or_update","tags":["Text Message"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchTextMessageConversationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessageConversations/batch-restore":{"post":{"description":"Restores the deleted TextMessageConversation records with the given ids.","operationId":"TextMessageConversations.batch_restore","summary":"TextMessageConversations.batch_restore","tags":["Text Message"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessageConversationRelationses/{id}":{"get":{"description":"Returns the TextMessageConversationRelations record with the given id.","operationId":"TextMessageConversationRelationses.get","summary":"TextMessageConversationRelationses.get","tags":["Text Message"],"parameters":[{"name":"id","in":"path","description":"Id of the TextMessageConversationRelations record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The TextMessageConversationRelations record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TextMessageConversationRelations"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the TextMessageConversationRelations record with the given id.","operationId":"TextMessageConversationRelationses.delete","summary":"TextMessageConversationRelationses.delete","tags":["Text Message"],"parameters":[{"name":"id","in":"path","description":"Id of the TextMessageConversationRelations record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the TextMessageConversationRelations record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the TextMessageConversationRelations record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"TextMessageConversationRelationses.update","summary":"TextMessageConversationRelationses.update","tags":["Text Message"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateTextMessageConversationRelationsInput"}}}},"responses":{"200":{"description":"The changed TextMessageConversationRelations record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TextMessageConversationRelations"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessageConversationRelationses":{"get":{"description":"Returns a page of TextMessageConversationRelations records, optionally filtered, sorted and limited to selected fields.","operationId":"TextMessageConversationRelationses.list","summary":"TextMessageConversationRelationses.list","tags":["Text Message"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of TextMessageConversationRelations records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/TextMessageConversationRelations"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a TextMessageConversationRelations record.","operationId":"TextMessageConversationRelationses.create","summary":"TextMessageConversationRelationses.create","tags":["Text Message"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createTextMessageConversationRelationsInput"}}}},"responses":{"201":{"description":"The created TextMessageConversationRelations record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/TextMessageConversationRelations"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessageConversationRelationses/batch-delete":{"post":{"description":"Deletes the TextMessageConversationRelations records with the given ids.","operationId":"TextMessageConversationRelationses.batch_delete","summary":"TextMessageConversationRelationses.batch_delete","tags":["Text Message"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessageConversationRelationses/batch-modify":{"post":{"description":"Creates or updates TextMessageConversationRelations records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"TextMessageConversationRelationses.batch_create_or_update","summary":"TextMessageConversationRelationses.batch_create_or_update","tags":["Text Message"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchTextMessageConversationRelationsInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/TextMessageConversationRelationses/batch-restore":{"post":{"description":"Restores the deleted TextMessageConversationRelations records with the given ids.","operationId":"TextMessageConversationRelationses.batch_restore","summary":"TextMessageConversationRelationses.batch_restore","tags":["Text Message"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Timeframes/{id}":{"get":{"description":"Returns the Timeframe record with the given id.","operationId":"Timeframes.get","summary":"Timeframes.get","tags":["Timeframe"],"parameters":[{"name":"id","in":"path","description":"Id of the Timeframe record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Timeframe record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Timeframe"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Timeframes":{"get":{"description":"Returns a page of Timeframe records, optionally filtered, sorted and limited to selected fields.","operationId":"Timeframes.list","summary":"Timeframes.list","tags":["Timeframe"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Timeframe records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Timeframe"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Translations/{id}":{"get":{"description":"Returns the Translation record with the given id.","operationId":"Translations.get","summary":"Translations.get","tags":["Translation"],"parameters":[{"name":"id","in":"path","description":"Id of the Translation record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Translation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Translation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Translation record with the given id.","operationId":"Translations.delete","summary":"Translations.delete","tags":["Translation"],"parameters":[{"name":"id","in":"path","description":"Id of the Translation record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Translation record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Translation record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Translations.update","summary":"Translations.update","tags":["Translation"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateTranslationInput"}}}},"responses":{"200":{"description":"The changed Translation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Translation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Translations":{"get":{"description":"Returns a page of Translation records, optionally filtered, sorted and limited to selected fields.","operationId":"Translations.list","summary":"Translations.list","tags":["Translation"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Translation records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Translation"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Translation record.","operationId":"Translations.create","summary":"Translations.create","tags":["Translation"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createTranslationInput"}}}},"responses":{"201":{"description":"The created Translation record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Translation"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Translations/batch-delete":{"post":{"description":"Deletes the Translation records with the given ids.","operationId":"Translations.batch_delete","summary":"Translations.batch_delete","tags":["Translation"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Translations/batch-modify":{"post":{"description":"Creates or updates Translation records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Translations.batch_create_or_update","summary":"Translations.batch_create_or_update","tags":["Translation"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchTranslationInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Translations/batch-restore":{"post":{"description":"Restores the deleted Translation records with the given ids.","operationId":"Translations.batch_restore","summary":"Translations.batch_restore","tags":["Translation"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Types/{id}":{"get":{"description":"Returns the Type record with the given id.","operationId":"Types.get","summary":"Types.get","tags":["Field"],"parameters":[{"name":"id","in":"path","description":"Id of the Type record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Type record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Type"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Types":{"get":{"description":"Returns a page of Type records, optionally filtered, sorted and limited to selected fields.","operationId":"Types.list","summary":"Types.list","tags":["Field"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Type records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Type"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/UnsubscribedPhones/{id}":{"get":{"description":"Returns the UnsubscribedPhone record with the given id.","operationId":"UnsubscribedPhones.get","summary":"UnsubscribedPhones.get","tags":["Text Message"],"parameters":[{"name":"id","in":"path","description":"Id of the UnsubscribedPhone record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The UnsubscribedPhone record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/UnsubscribedPhone"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the UnsubscribedPhone record with the given id.","operationId":"UnsubscribedPhones.delete","summary":"UnsubscribedPhones.delete","tags":["Text Message"],"parameters":[{"name":"id","in":"path","description":"Id of the UnsubscribedPhone record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the UnsubscribedPhone record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the UnsubscribedPhone record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"UnsubscribedPhones.update","summary":"UnsubscribedPhones.update","tags":["Text Message"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateUnsubscribedPhoneInput"}}}},"responses":{"200":{"description":"The changed UnsubscribedPhone record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/UnsubscribedPhone"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/UnsubscribedPhones":{"get":{"description":"Returns a page of UnsubscribedPhone records, optionally filtered, sorted and limited to selected fields.","operationId":"UnsubscribedPhones.list","summary":"UnsubscribedPhones.list","tags":["Text Message"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of UnsubscribedPhone records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/UnsubscribedPhone"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a UnsubscribedPhone record.","operationId":"UnsubscribedPhones.create","summary":"UnsubscribedPhones.create","tags":["Text Message"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createUnsubscribedPhoneInput"}}}},"responses":{"201":{"description":"The created UnsubscribedPhone record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/UnsubscribedPhone"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/UnsubscribedPhones/batch-delete":{"post":{"description":"Deletes the UnsubscribedPhone records with the given ids.","operationId":"UnsubscribedPhones.batch_delete","summary":"UnsubscribedPhones.batch_delete","tags":["Text Message"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/UnsubscribedPhones/batch-modify":{"post":{"description":"Creates or updates UnsubscribedPhone records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"UnsubscribedPhones.batch_create_or_update","summary":"UnsubscribedPhones.batch_create_or_update","tags":["Text Message"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchUnsubscribedPhoneInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/UnsubscribedPhones/batch-restore":{"post":{"description":"Restores the deleted UnsubscribedPhone records with the given ids.","operationId":"UnsubscribedPhones.batch_restore","summary":"UnsubscribedPhones.batch_restore","tags":["Text Message"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Webhooks/{id}":{"get":{"description":"Returns one webhook by id.","operationId":"Webhooks.get","summary":"Get a webhook","tags":["Webhook"],"parameters":[{"name":"id","in":"path","description":"Id of the Webhook record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Webhook record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Webhook"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Removes the subscription and answers with its id. The API then sends a DELETE request to the webhook's URL.","operationId":"Webhooks.delete","summary":"Delete a webhook","tags":["Webhook"],"parameters":[{"name":"id","in":"path","description":"Id of the Webhook record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes the fields you send, such as `events` or `url`, and leaves the rest as they are.","parameters":[{"name":"id","in":"path","description":"Id of the Webhook record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Webhooks.update","summary":"Update a webhook","tags":["Webhook"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateWebhookInput"}}}},"responses":{"200":{"description":"The changed Webhook record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Webhook"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Webhooks":{"get":{"description":"Returns the webhooks of the space, one page at a time.","operationId":"Webhooks.list","summary":"List webhooks","tags":["Webhook"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Webhook records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Webhook"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Subscribes a URL to events and answers 201 with the webhook. `url`, `events` and `insecure_ssl` are required. Set `signature` to have deliveries signed.","operationId":"Webhooks.create","summary":"Create a webhook","tags":["Webhook"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createWebhookInput"},"example":{"url":"https://hooks.example.com/coevera","events":["Account.Create","Account.Update"],"insecure_ssl":false,"signature":"5f0c2a8e-3b1d-4c7e-9a46-1d2e3f4a5b6c"}}}},"responses":{"201":{"description":"The created Webhook record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Webhook"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Webhooks/batch-delete":{"post":{"description":"Removes the webhooks whose ids are in the body, a JSON array.","operationId":"Webhooks.batch_delete","summary":"Delete webhooks in a batch","tags":["Webhook"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Webhooks/batch-modify":{"post":{"description":"An item with an `id` updates that webhook; an item without one creates a webhook.","operationId":"Webhooks.batch_create_or_update","summary":"Create or update webhooks in a batch","tags":["Webhook"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchWebhookInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Webhooks/batch-restore":{"post":{"description":"Restores the deleted webhooks whose ids are in the body, a JSON array.","operationId":"Webhooks.batch_restore","summary":"Restore deleted webhooks","tags":["Webhook"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/WebhookEvents/{id}":{"get":{"description":"Returns the WebhookEvent record with the given id.","operationId":"WebhookEvents.get","summary":"WebhookEvents.get","tags":["Webhook"],"parameters":[{"name":"id","in":"path","description":"Id of the WebhookEvent record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The WebhookEvent record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/WebhookEvent"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the WebhookEvent record with the given id.","operationId":"WebhookEvents.delete","summary":"WebhookEvents.delete","tags":["Webhook"],"parameters":[{"name":"id","in":"path","description":"Id of the WebhookEvent record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the WebhookEvent record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the WebhookEvent record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"WebhookEvents.update","summary":"WebhookEvents.update","tags":["Webhook"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateWebhookEventInput"}}}},"responses":{"200":{"description":"The changed WebhookEvent record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/WebhookEvent"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/WebhookEvents":{"get":{"description":"Returns a page of WebhookEvent records, optionally filtered, sorted and limited to selected fields.","operationId":"WebhookEvents.list","summary":"WebhookEvents.list","tags":["Webhook"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of WebhookEvent records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/WebhookEvent"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a WebhookEvent record.","operationId":"WebhookEvents.create","summary":"WebhookEvents.create","tags":["Webhook"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createWebhookEventInput"}}}},"responses":{"201":{"description":"The created WebhookEvent record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/WebhookEvent"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/WebhookEvents/batch-delete":{"post":{"description":"Deletes the WebhookEvent records with the given ids.","operationId":"WebhookEvents.batch_delete","summary":"WebhookEvents.batch_delete","tags":["Webhook"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/WebhookEvents/batch-modify":{"post":{"description":"Creates or updates WebhookEvent records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"WebhookEvents.batch_create_or_update","summary":"WebhookEvents.batch_create_or_update","tags":["Webhook"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchWebhookEventInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/WebhookEvents/batch-restore":{"post":{"description":"Restores the deleted WebhookEvent records with the given ids.","operationId":"WebhookEvents.batch_restore","summary":"WebhookEvents.batch_restore","tags":["Webhook"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Webresources/{id}":{"get":{"description":"Returns the Webresource record with the given id.","operationId":"Webresources.get","summary":"Webresources.get","tags":["Webresource"],"parameters":[{"name":"id","in":"path","description":"Id of the Webresource record to retrieve.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"expand","in":"query","required":false,"description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations. The only parameter this call accepts.","example":"owner","schema":{"type":"string"}}],"responses":{"200":{"description":"The Webresource record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Webresource"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"delete":{"description":"Deletes the Webresource record with the given id.","operationId":"Webresources.delete","summary":"Webresources.delete","tags":["Webresource"],"parameters":[{"name":"id","in":"path","description":"Id of the Webresource record to delete.","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Deletion confirmation.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"description":"Id of the deleted record.","type":"string","format":"uuid"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"patch":{"description":"Changes fields of the Webresource record with the given id; fields left out keep their values.","parameters":[{"name":"id","in":"path","description":"Id of the Webresource record to update.","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"operationId":"Webresources.update","summary":"Webresources.update","tags":["Webresource"],"requestBody":{"description":"Field values to change.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateWebresourceInput"}}}},"responses":{"200":{"description":"The changed Webresource record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Webresource"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFound"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Webresources":{"get":{"description":"Returns a page of Webresource records, optionally filtered, sorted and limited to selected fields.","operationId":"Webresources.list","summary":"Webresources.list","tags":["Webresource"],"parameters":[{"name":"include-deleted","in":"query","description":"Include soft-deleted records. Lists only; get-by-id refuses it.","required":false,"schema":{"type":"boolean"}},{"name":"first","in":"query","description":"Page size. Default 30, maximum 100; a larger value is refused with HTTP 400, code 117.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100,"default":30}},{"name":"last","in":"query","description":"Return the last N records of the result; together with `first`, the last N of the first M. Maximum 100.","required":false,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":100}},{"name":"before","in":"query","description":"Cursor from `page_info.start_cursor`, to page backwards. URL-encode it.","required":false,"schema":{"type":"string"}},{"name":"after","in":"query","description":"Cursor from `page_info.end_cursor` of the previous page. URL-encode it: cursors are base64, and a raw + becomes a space.","required":false,"schema":{"type":"string"}},{"name":"expand","in":"query","description":"Related records to return inline instead of their URIs, comma-separated; dots reach nested relations, as in `account_relations.account`.","required":false,"schema":{"type":"string"},"example":"owner,unit"},{"name":"order-by","in":"query","description":"Fields to sort by, comma-separated. A leading - sorts descending, as in `-modified`; dotted paths sort by related fields.","required":false,"schema":{"type":"string"},"example":"-modified"},{"name":"filter","in":"query","description":"`filter[field]=value`. Separate several values with a raw comma (OR), as in `filter[name]=north,south`. Encode a comma that belongs to a value as %2C. URLSearchParams and Python requests encode every comma, so build the filter part of the query string yourself. Dotted paths filter on related records, as in `filter[owner.email]`. Encode a + in a value as %2B: query values are form-decoded, so a raw + becomes a space.","required":false,"schema":{"type":"object"},"style":"deepObject","allowReserved":true,"example":{"name":"north"}},{"name":"filter-op","in":"query","description":"`filter-op[field]=operator`, one per field: eq (the default), ieq, not-eq, not-ieq, contains, icontains, starts, istarts, ends, iends, gt, gte, lt, lte, between, null, not-null, empty and not-empty. null, not-null, empty and not-empty take no filter value; gt, gte, lt and lte take exactly one.","required":false,"schema":{"type":"object","additionalProperties":{"type":"string","enum":["eq","ieq","not-eq","not-ieq","contains","icontains","starts","istarts","ends","iends","gt","gte","lt","lte","between","null","not-null","empty","not-empty"]}},"style":"deepObject","allowReserved":true,"example":{"name":"icontains"}},{"name":"load-only","in":"query","description":"Fields to return, comma-separated (raw or encoded commas both work here); dots select nested fields, as in `owner.id`. All fields are returned without it. Lists only: get-by-id refuses it with HTTP 400, code 118.","required":false,"schema":{"type":"string"},"example":"id,name,owner.id"}],"responses":{"200":{"description":"Page of Webresource records.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"$ref":"#/components/schemas/Webresource"}},"page_info":{"type":"object","properties":{"start_cursor":{"type":"string","example":"WyIwMSIsICJiMmYwODI0Ni1iYWE5LTQyY2QtYmM3Yi04YmM4MjY3M2E2NTgiXQ==","description":"Cursor of the first record of the page."},"end_cursor":{"type":"string","example":"WyIwNSIsICJmMjZhZjZiMC00ZWE4LTQ3MDgtODU2NC0wN2JmYzI4ZGQ5ZTgiXQ==","description":"Cursor of the last record of the page."},"has_previous_page":{"type":"boolean","example":true,"description":"Whether records exist before this page; pass start_cursor as before to load them."},"has_next_page":{"type":"boolean","example":true,"description":"Whether records exist after this page; pass end_cursor as after to load them."}},"description":"Pagination of the result; not returned when the legacy limit and offset parameters are used."},"total":{"type":"integer","description":"Number of records that match the request, across all pages.","example":1}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}},"post":{"description":"Creates a Webresource record.","operationId":"Webresources.create","summary":"Webresources.create","tags":["Webresource"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}}],"requestBody":{"description":"Field values of the new record.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/createWebresourceInput"}}}},"responses":{"201":{"description":"The created Webresource record.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"$ref":"#/components/schemas/Webresource"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Webresources/batch-delete":{"post":{"description":"Deletes the Webresource records with the given ids.","operationId":"Webresources.batch_delete","summary":"Webresources.batch_delete","tags":["Webresource"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the records to delete.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to delete.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the deleted record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the deleted record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Webresources/batch-modify":{"post":{"description":"Creates or updates Webresource records in one request: an item with an id updates that record, an item without one creates a new record.","operationId":"Webresources.batch_create_or_update","summary":"Webresources.batch_create_or_update","tags":["Webresource"],"parameters":[{"name":"validation-level","in":"query","description":"Bit mask that relaxes validation on this write. 0 (the default) validates everything. Bits: 2 skip unchanged fields, 4 skip admin-defined validations, 8 allow read-only fields, 16 skip relation checks, 32 skip value checks, 64 skip invalid recalculations, 128 skip step-checklist gates, 256 add conditional field requirements, 512 skip uniqueness checks. Add bits together (20 = 4 + 16); member names and comma lists such as 4,16 work too. A value with an internal-only bit is refused with HTTP 400, code 117.","schema":{"type":"integer","format":"int32"}},{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Records to create or update.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/batchWebresourceInput"}}}}},"responses":{"200":{"description":"Result per item, in request order: the id of the created or updated record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the created or updated record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}},"/entities/Webresources/batch-restore":{"post":{"description":"Restores the deleted Webresource records with the given ids.","operationId":"Webresources.batch_restore","summary":"Webresources.batch_restore","tags":["Webresource"],"parameters":[{"name":"rollback-method","in":"query","description":"0, the default: one failed item fails the whole batch (HTTP 422, or 404 for an unknown id) and nothing is written. 1: the valid items are written and the call answers 200 with success false and one result per item, an id or an error, in input order. Check every item.","schema":{"type":"integer","format":"int32","enum":[0,1],"default":0}}],"requestBody":{"description":"Ids of the deleted records to restore.","required":true,"content":{"application/json":{"schema":{"type":"array","items":{"type":"string","description":"Id of a record to restore.","format":"uuid"}}}}},"responses":{"200":{"description":"Result per id, in request order: the id of the restored record, or the error.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","example":true,"description":"True when the request succeeded; false on error."},"data":{"type":"array","items":{"oneOf":[{"type":"string","description":"Id of the restored record.","format":"uuid"},{"$ref":"#/components/schemas/Error"}]}}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"404":{"$ref":"#/components/responses/NotFoundInBatch"},"422":{"$ref":"#/components/responses/ValidationFailed"},"429":{"$ref":"#/components/responses/TooManyRequests"},"500":{"$ref":"#/components/responses/ServerError"}}}}},"tags":[{"name":"API Access","description":"API credentials that integrations use to access the space."},{"name":"Account","description":"Accounts (companies the sales team works with), their types, roles, relations to other accounts and contacts, KPIs, health configurations and sharing."},{"name":"Activity","description":"Tasks and appointments with their types, reminders, recurrences, invitees, comments and sharing."},{"name":"Approval","description":"Approval processes and the approval requests they raise, with their approvers and activity log."},{"name":"Call","description":"Phone calls logged in the space."},{"name":"Chat","description":"Conversations of users with the AI assistant."},{"name":"Client","description":"Users of the space with their settings, favorites and other per-user data."},{"name":"Company Email","description":"Shared company mailboxes users can send emails from."},{"name":"Contact","description":"Contacts (people the sales team works with), their types, relations to accounts and other contacts, KPIs and sharing."},{"name":"Country","description":"Countries offered in address fields."},{"name":"Currency","description":"Currencies of the space and their exchange rates."},{"name":"Custom Entity","description":"Entities of the space and their settings, and the records and record types of custom entities, the kinds of records the space defines in addition to the built-in ones."},{"name":"Document","description":"Files stored in the space, their folders and templates, and the records they are attached to."},{"name":"Email","description":"Emails, email templates and labels, with their mailboxes and sharing."},{"name":"Email Sequence","description":"Email sequences, the records enrolled in them and their activity log."},{"name":"Field","description":"Fields of entities, their dropdown options, data types, permissions, mappings and sequences."},{"name":"Forecast","description":"Sales forecasts."},{"name":"Form","description":"Form views: variants of record forms that hide or color selected fields."},{"name":"Import","description":"Saved mappings of import file columns to fields."},{"name":"Interface","description":"Layouts of how records of an entity type are previewed in the app."},{"name":"Lead","description":"Lead scoring configurations."},{"name":"Lead & Opportunity","description":"Leads and opportunities, their types, processes, related accounts and contacts, KPIs and sharing."},{"name":"MasterRight","description":"User roles and the account, activity, lead, quote and pipeline types, company emails and phones they allow."},{"name":"Media","description":"Recordings of calls and meetings with their transcriptions."},{"name":"Memo","description":"Memos (internal messages linked to records) and their comments."},{"name":"Message","description":"Links of emails and memos to records, and their sharing."},{"name":"Note","description":"Notes users write on records."},{"name":"Online Form","description":"Online forms, their types, styles and submissions."},{"name":"Opportunity","description":"Fitness configurations of lead and opportunity types and their indicators."},{"name":"Phone","description":"Phone numbers connected to the space for calls and text messages."},{"name":"Pipeline","description":"Sales pipelines that opportunities move through."},{"name":"Process","description":"Automatizer processes, their templates and activity log."},{"name":"Product","description":"Products and services of the catalog, their categories, types, price lists and pipelines."},{"name":"Product Line Items","description":"Product line items on opportunities and quotes."},{"name":"Profile","description":"Saved views of app screens and their sharing."},{"name":"Project","description":"Projects, their types, objectives, contacts, KPIs and sharing."},{"name":"Quote","description":"Quotes, their types, processes, related accounts and contacts, KPIs and sharing."},{"name":"Report","description":"Reports and dashboards, their folders, delivery schedules and sharing."},{"name":"SalesRole","description":"Roles contacts play in deals."},{"name":"SalesUnit","description":"Sales units of the organization hierarchy and their members."},{"name":"Solution","description":"Solutions grouping automation tools, and their templates."},{"name":"Step","description":"Steps of pipelines and processes, and their checklists."},{"name":"Tag","description":"Tags and the records they are attached to."},{"name":"Target","description":"Sales targets and the users they are set for."},{"name":"Text Message","description":"Text message conversations, their messages and records, and phone numbers that opted out of text messages."},{"name":"Timeframe","description":"Time leads and opportunities spent in pipeline steps."},{"name":"Translation","description":"Translations of field names, dropdown options and form texts."},{"name":"Webhook","description":"Webhooks and the events they are called for."},{"name":"Webresource","description":"Web pages embedded in the app for records of an entity."}],"components":{"schemas":{"Error":{"description":"The body of every REST error. `code` and `name` are stable identifiers; `message` is for people. The full list of codes is at https://developers.coevera.com/reference/errors/.","properties":{"http_status":{"description":"HTTP status code.","type":"integer","example":400},"code":{"description":"Numeric code of the API error.","type":"integer","example":117},"name":{"description":"Name of the API error.","type":"string","example":"ERROR_PARAMETER_INVALID"},"message":{"description":"Message describing the error.","type":"string"},"success":{"description":"Always false on error.","type":"boolean","example":false}},"required":["success","http_status"]},"Account":{"description":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"account_type":{"type":"string","format":"uri","description":"Account type that classifies this account. Account types are configurable per team space and drive which form, fields and pipelines apply.\n\nRelated AccountType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AccountType' for its fields."},"currency_exchange_rates_list":{"type":"string","format":"uri","description":"Currency exchange rate list used to convert monetary fields linked to this account. Empty to inherit the team space default.\n\nRelated CurrencyExchangeRatesList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRatesList' for its fields."},"customer_type":{"type":"string","format":"uri","description":"Customer category (e.g. Lead, Prospect, Customer). Configurable per team space.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"industry":{"type":"string","format":"uri","description":"Industry the account operates in. Configurable per team space.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"owner":{"type":"string","format":"uri","description":"Sales user who owns this account.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"parent_account":{"type":"string","format":"uri","description":"Parent account in a corporate hierarchy. Empty for top-level accounts.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"parent_account_relation_type":{"type":"string","format":"uri","description":"Type of relationship to the parent account (e.g. subsidiary, branch). Required when parent_account is set.\n\nRelated ParentAccountRelationType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ParentAccountRelationType' for its fields."},"picture":{"type":"string","format":"uri","description":"Profile picture or company logo associated with the account.\n\nRelated CloudObject record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObject' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit this account is assigned to. Determines which team members can see the record under unit-based sharing.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"account_class":{"type":"integer","description":"Manual classification grade assigned to the account. Used in segmentation and reporting.\n\nInteger enum value: 1 - NoClass, 2 - ClassA, 3 - ClassB, 4 - ClassC, 5 - ClassD","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The account is not classified.","2":"Most valuable accounts (class A).","3":"Second most valuable accounts (class B).","4":"Third most valuable accounts (class C).","5":"Least valuable accounts (class D)."}},"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type assigned to this account."},"address":{"type":"string","example":"string","description":"Street address of the account."},"city":{"type":"string","example":"string","description":"City of the account address."},"comments":{"type":"string","example":"string","description":"Free-form notes describing the account."},"country":{"type":"string","example":"string","description":"Country of the account address."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this account."},"customer_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the customer type (e.g. Lead, Prospect, Customer) that classifies the account."},"email1":{"type":"string","example":"string","description":"Primary email address of the account. Used as default recipient for emails sent from Coevera."},"email2":{"type":"string","example":"string","description":"Additional email address."},"email3":{"type":"string","example":"string","description":"Additional email address."},"email4":{"type":"string","example":"string","description":"Additional email address."},"email5":{"type":"string","example":"string","description":"Additional email address."},"health_category":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Coarser bucket of health_status used for grouping and reporting. Read-only."},"health_status":{"type":"integer","format":"int32","example":1,"description":"Computed entity-health state (e.g. healthy, at-risk). Read-only; recalculated by Coevera when relevant fields change."},"home_page":{"type":"string","example":"string","description":"Website URL of the account. May be auto-filled from the primary email domain when domain extraction is enabled."},"industry_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the industry classification."},"is_archived":{"type":"boolean","example":false,"description":"True when the account has been archived. Archived accounts remain readable but are hidden from active lists and cannot be edited until reactivated."},"last_ai_account_hierarchy_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested account hierarchy was last applied to this account."},"last_ai_org_chart_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested org chart was last applied to this account."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account owner."},"parent_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent account in the corporate hierarchy. Empty for top-level accounts."},"parent_account_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent-account relationship type."},"phone1":{"type":"string","example":"string","description":"Primary phone number of the account. Used as default target for click-to-call."},"phone2":{"type":"string","example":"string","description":"Additional phone number."},"phone3":{"type":"string","example":"string","description":"Additional phone number."},"phone4":{"type":"string","example":"string","description":"Additional phone number."},"phone5":{"type":"string","example":"string","description":"Additional phone number."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the profile picture document."},"quick_parent_account_name":{"type":"string","example":"string","description":"Free-text parent-account name used when the parent has not been linked to an actual Account record. Lets integrators note the relationship without creating a separate parent Account."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"state_province":{"type":"string","example":"string","description":"State or province of the account address."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"zip_code":{"type":"string","example":"string","description":"ZIP or postal code of the account address."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"formatted_name":{"type":"string","example":"string","description":"Display version of the account name, used in lists and references."},"social_media":{"type":"string","format":"uri","description":"Social network profiles linked to this account (e.g. LinkedIn, Facebook).\n\nRelated AccountSocialRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AccountSocialRelation' for its fields."},"sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related AccountSharingSalesUnitRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AccountSharingSalesUnitRelation' for its fields."},"description":"Sales units that have been granted shared access to this account. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related AccountSharingClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AccountSharingClientRelation' for its fields."},"description":"Users that have been granted shared access to this account. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Documents linked to this account."},"is_favorite":{"type":"boolean","example":false,"description":"True when the current authenticated user has marked this account as favorite. Per-user."},"is_unsubscribed":{"type":"boolean","example":false,"description":"If account has any unsubscribed email."},"tags":{"type":"array","items":{"type":"string","format":"uri","description":"Related TagRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TagRelation' for its fields."},"description":"Tag labels applied to this account."},"static_profiles":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProfileRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProfileRelation' for its fields."},"description":"Saved view profiles this account currently matches."},"health":{"type":"object","description":"Composite entity-health summary, combining current and previous state with last-calculation metadata. Read-only; computed by Coevera."},"modified_by_user":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent modification made by an end user (excluding system changes). Read-only; computed by Coevera."}},"required":["is_delete_protected","id","account_type","owner","unit","name","owner_id","formatted_name","is_favorite"]},"createAccountInput":{"description":"Field values of a new Account record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"picture":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Profile picture or company logo associated with the account.\n\nRelated CloudObject record; see 'createCloudObjectInput' for its fields."},"account_class":{"type":"integer","description":"Manual classification grade assigned to the account. Used in segmentation and reporting.\n\nInteger enum value: 1 - NoClass, 2 - ClassA, 3 - ClassB, 4 - ClassC, 5 - ClassD","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The account is not classified.","2":"Most valuable accounts (class A).","3":"Second most valuable accounts (class B).","4":"Third most valuable accounts (class C).","5":"Least valuable accounts (class D)."}},"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type assigned to this account."},"address":{"type":"string","example":"string","description":"Street address of the account."},"city":{"type":"string","example":"string","description":"City of the account address."},"comments":{"type":"string","example":"string","description":"Free-form notes describing the account."},"country":{"type":"string","example":"string","description":"Country of the account address."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this account."},"customer_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the customer type (e.g. Lead, Prospect, Customer) that classifies the account."},"email1":{"type":"string","example":"string","description":"Primary email address of the account. Used as default recipient for emails sent from Coevera."},"email2":{"type":"string","example":"string","description":"Additional email address."},"email3":{"type":"string","example":"string","description":"Additional email address."},"email4":{"type":"string","example":"string","description":"Additional email address."},"email5":{"type":"string","example":"string","description":"Additional email address."},"home_page":{"type":"string","example":"string","description":"Website URL of the account. May be auto-filled from the primary email domain when domain extraction is enabled."},"industry_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the industry classification."},"is_archived":{"type":"boolean","example":false,"description":"True when the account has been archived. Archived accounts remain readable but are hidden from active lists and cannot be edited until reactivated."},"last_ai_account_hierarchy_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested account hierarchy was last applied to this account."},"last_ai_org_chart_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested org chart was last applied to this account."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account owner."},"parent_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent account in the corporate hierarchy. Empty for top-level accounts."},"parent_account_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent-account relationship type."},"phone1":{"type":"string","example":"string","description":"Primary phone number of the account. Used as default target for click-to-call."},"phone2":{"type":"string","example":"string","description":"Additional phone number."},"phone3":{"type":"string","example":"string","description":"Additional phone number."},"phone4":{"type":"string","example":"string","description":"Additional phone number."},"phone5":{"type":"string","example":"string","description":"Additional phone number."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the profile picture document."},"quick_parent_account_name":{"type":"string","example":"string","description":"Free-text parent-account name used when the parent has not been linked to an actual Account record. Lets integrators note the relationship without creating a separate parent Account."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"state_province":{"type":"string","example":"string","description":"State or province of the account address."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"zip_code":{"type":"string","example":"string","description":"ZIP or postal code of the account address."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"social_media":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AccountSocialRelation record."}},"description":"Social network profiles linked to this account (e.g. LinkedIn, Facebook).\n\nRelated AccountSocialRelation record; see 'createAccountSocialRelationInput' for its fields."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AccountSharingSalesUnitRelation record."}},"description":"Related AccountSharingSalesUnitRelation record; see 'createAccountSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this account. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AccountSharingClientRelation record."}},"description":"Related AccountSharingClientRelation record; see 'createAccountSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this account. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Documents linked to this account."},"is_unsubscribed":{"type":"boolean","example":false,"description":"If account has any unsubscribed email."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'createTagRelationInput' for its fields."},"description":"Tag labels applied to this account."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'createProfileRelationInput' for its fields."},"description":"Saved view profiles this account currently matches."}},"required":["name","owner_id"]},"updateAccountInput":{"description":"Field values to change on an Account record; fields left out keep their values.","properties":{"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"picture":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Profile picture or company logo associated with the account.\n\nRelated CloudObject record; see 'updateCloudObjectInput' for its fields."},"account_class":{"type":"integer","description":"Manual classification grade assigned to the account. Used in segmentation and reporting.\n\nInteger enum value: 1 - NoClass, 2 - ClassA, 3 - ClassB, 4 - ClassC, 5 - ClassD","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The account is not classified.","2":"Most valuable accounts (class A).","3":"Second most valuable accounts (class B).","4":"Third most valuable accounts (class C).","5":"Least valuable accounts (class D)."}},"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type assigned to this account."},"address":{"type":"string","example":"string","description":"Street address of the account."},"city":{"type":"string","example":"string","description":"City of the account address."},"comments":{"type":"string","example":"string","description":"Free-form notes describing the account."},"country":{"type":"string","example":"string","description":"Country of the account address."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this account."},"customer_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the customer type (e.g. Lead, Prospect, Customer) that classifies the account."},"email1":{"type":"string","example":"string","description":"Primary email address of the account. Used as default recipient for emails sent from Coevera."},"email2":{"type":"string","example":"string","description":"Additional email address."},"email3":{"type":"string","example":"string","description":"Additional email address."},"email4":{"type":"string","example":"string","description":"Additional email address."},"email5":{"type":"string","example":"string","description":"Additional email address."},"home_page":{"type":"string","example":"string","description":"Website URL of the account. May be auto-filled from the primary email domain when domain extraction is enabled."},"industry_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the industry classification."},"is_archived":{"type":"boolean","example":false,"description":"True when the account has been archived. Archived accounts remain readable but are hidden from active lists and cannot be edited until reactivated."},"last_ai_account_hierarchy_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested account hierarchy was last applied to this account."},"last_ai_org_chart_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested org chart was last applied to this account."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account owner."},"parent_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent account in the corporate hierarchy. Empty for top-level accounts."},"parent_account_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent-account relationship type."},"phone1":{"type":"string","example":"string","description":"Primary phone number of the account. Used as default target for click-to-call."},"phone2":{"type":"string","example":"string","description":"Additional phone number."},"phone3":{"type":"string","example":"string","description":"Additional phone number."},"phone4":{"type":"string","example":"string","description":"Additional phone number."},"phone5":{"type":"string","example":"string","description":"Additional phone number."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the profile picture document."},"quick_parent_account_name":{"type":"string","example":"string","description":"Free-text parent-account name used when the parent has not been linked to an actual Account record. Lets integrators note the relationship without creating a separate parent Account."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"state_province":{"type":"string","example":"string","description":"State or province of the account address."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"zip_code":{"type":"string","example":"string","description":"ZIP or postal code of the account address."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"social_media":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AccountSocialRelation record."}},"description":"Social network profiles linked to this account (e.g. LinkedIn, Facebook).\n\nRelated AccountSocialRelation record; see 'updateAccountSocialRelationInput' for its fields."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AccountSharingSalesUnitRelation record."}},"description":"Related AccountSharingSalesUnitRelation record; see 'updateAccountSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this account. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AccountSharingClientRelation record."}},"description":"Related AccountSharingClientRelation record; see 'updateAccountSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this account. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this account."},"is_unsubscribed":{"type":"boolean","example":false,"description":"If account has any unsubscribed email."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this account."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'updateProfileRelationInput' for its fields."},"description":"Saved view profiles this account currently matches."}}},"batchAccountInput":{"description":"Field values of an Account record to create, or to update when its id is set.","properties":{"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"picture":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Profile picture or company logo associated with the account.\n\nRelated CloudObject record; see 'updateCloudObjectInput' for its fields."},"account_class":{"type":"integer","description":"Manual classification grade assigned to the account. Used in segmentation and reporting.\n\nInteger enum value: 1 - NoClass, 2 - ClassA, 3 - ClassB, 4 - ClassC, 5 - ClassD","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The account is not classified.","2":"Most valuable accounts (class A).","3":"Second most valuable accounts (class B).","4":"Third most valuable accounts (class C).","5":"Least valuable accounts (class D)."}},"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type assigned to this account."},"address":{"type":"string","example":"string","description":"Street address of the account."},"city":{"type":"string","example":"string","description":"City of the account address."},"comments":{"type":"string","example":"string","description":"Free-form notes describing the account."},"country":{"type":"string","example":"string","description":"Country of the account address."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this account."},"customer_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the customer type (e.g. Lead, Prospect, Customer) that classifies the account."},"email1":{"type":"string","example":"string","description":"Primary email address of the account. Used as default recipient for emails sent from Coevera."},"email2":{"type":"string","example":"string","description":"Additional email address."},"email3":{"type":"string","example":"string","description":"Additional email address."},"email4":{"type":"string","example":"string","description":"Additional email address."},"email5":{"type":"string","example":"string","description":"Additional email address."},"home_page":{"type":"string","example":"string","description":"Website URL of the account. May be auto-filled from the primary email domain when domain extraction is enabled."},"industry_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the industry classification."},"is_archived":{"type":"boolean","example":false,"description":"True when the account has been archived. Archived accounts remain readable but are hidden from active lists and cannot be edited until reactivated."},"last_ai_account_hierarchy_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested account hierarchy was last applied to this account."},"last_ai_org_chart_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested org chart was last applied to this account."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account owner."},"parent_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent account in the corporate hierarchy. Empty for top-level accounts."},"parent_account_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent-account relationship type."},"phone1":{"type":"string","example":"string","description":"Primary phone number of the account. Used as default target for click-to-call."},"phone2":{"type":"string","example":"string","description":"Additional phone number."},"phone3":{"type":"string","example":"string","description":"Additional phone number."},"phone4":{"type":"string","example":"string","description":"Additional phone number."},"phone5":{"type":"string","example":"string","description":"Additional phone number."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the profile picture document."},"quick_parent_account_name":{"type":"string","example":"string","description":"Free-text parent-account name used when the parent has not been linked to an actual Account record. Lets integrators note the relationship without creating a separate parent Account."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"state_province":{"type":"string","example":"string","description":"State or province of the account address."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"zip_code":{"type":"string","example":"string","description":"ZIP or postal code of the account address."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"social_media":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AccountSocialRelation record."}},"description":"Social network profiles linked to this account (e.g. LinkedIn, Facebook).\n\nRelated AccountSocialRelation record; see 'updateAccountSocialRelationInput' for its fields."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AccountSharingSalesUnitRelation record."}},"description":"Related AccountSharingSalesUnitRelation record; see 'updateAccountSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this account. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AccountSharingClientRelation record."}},"description":"Related AccountSharingClientRelation record; see 'updateAccountSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this account. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this account."},"is_unsubscribed":{"type":"boolean","example":false,"description":"If account has any unsubscribed email."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this account."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'updateProfileRelationInput' for its fields."},"description":"Saved view profiles this account currently matches."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AccountDataExRelation":{"description":"Option selected in a multi-select checkbox field of an account; there is one link per selected option.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account on which the option is selected.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"data":{"type":"string","format":"uri","description":"Option selected in the multi-select field; it belongs to the data set given by data_set_id.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account on which the option is selected."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","account","data","account_id","data_id","data_set_id"]},"AccountKPI":{"description":"Recorded KPI event of an account, such as its creation, archiving or the first and last email sent, used in KPI reports.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account this KPI event relates to.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"client":{"type":"string","format":"uri","description":"User who triggered the KPI event (e.g. created or archived the account, sent the first email).\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"owner":{"type":"string","format":"uri","description":"Account owner at the time the KPI event occurred.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the triggering user belonged to at the time of the event.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account this KPI event relates to."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: CreateAccount, FirstEmailSent, LastEmailSent, Archive or LastModified.\n\nInteger enum value: 1 - CreateAccount, 2 - LastEmailSent, 3 - FirstEmailSent, 4 - Archive, 5 - LastModified","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The account was created.","2":"The most recent email was sent to the account.","3":"The first email was sent to the account.","4":"The account was archived; the entry is removed when it is unarchived.","5":"The account was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","account","owner","account_id","kpi","owner_id"]},"createAccountKPIInput":{"description":"Field values of a new AccountKPI record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account this KPI event relates to."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: CreateAccount, FirstEmailSent, LastEmailSent, Archive or LastModified.\n\nInteger enum value: 1 - CreateAccount, 2 - LastEmailSent, 3 - FirstEmailSent, 4 - Archive, 5 - LastModified","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The account was created.","2":"The most recent email was sent to the account.","3":"The first email was sent to the account.","4":"The account was archived; the entry is removed when it is unarchived.","5":"The account was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["account_id","kpi","owner_id"]},"updateAccountKPIInput":{"description":"Field values to change on an AccountKPI record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account this KPI event relates to."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: CreateAccount, FirstEmailSent, LastEmailSent, Archive or LastModified.\n\nInteger enum value: 1 - CreateAccount, 2 - LastEmailSent, 3 - FirstEmailSent, 4 - Archive, 5 - LastModified","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The account was created.","2":"The most recent email was sent to the account.","3":"The first email was sent to the account.","4":"The account was archived; the entry is removed when it is unarchived.","5":"The account was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAccountKPIInput":{"description":"Field values of an AccountKPI record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account this KPI event relates to."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: CreateAccount, FirstEmailSent, LastEmailSent, Archive or LastModified.\n\nInteger enum value: 1 - CreateAccount, 2 - LastEmailSent, 3 - FirstEmailSent, 4 - Archive, 5 - LastModified","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The account was created.","2":"The most recent email was sent to the account.","3":"The first email was sent to the account.","4":"The account was archived; the entry is removed when it is unarchived.","5":"The account was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AccountProductPricing":{"description":"Special price of a product for one account, used instead of the regular price when the product is sold to that account.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account that this price override applies to.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"currency":{"type":"string","format":"uri","description":"Currency of the override price.\n\nRelated Currency record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Currency' for its fields."},"product":{"type":"string","format":"uri","description":"Product whose price is overridden for this account.\n\nRelated Product record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Product' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account the price override applies to."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency the override price is expressed in."},"price":{"type":"number","format":"double","example":"4.32","description":"Price applied for this product when sold to this account, in the specified currency."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product whose price is overridden for the account."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","account","currency","product","account_id","currency_id","product_id"]},"createAccountProductPricingInput":{"description":"Field values of a new AccountProductPricing record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account the price override applies to."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency the override price is expressed in."},"price":{"type":"number","format":"double","example":"4.32","description":"Price applied for this product when sold to this account, in the specified currency."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product whose price is overridden for the account."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["account_id","currency_id","product_id"]},"updateAccountProductPricingInput":{"description":"Field values to change on an AccountProductPricing record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account the price override applies to."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency the override price is expressed in."},"price":{"type":"number","format":"double","example":"4.32","description":"Price applied for this product when sold to this account, in the specified currency."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product whose price is overridden for the account."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAccountProductPricingInput":{"description":"Field values of an AccountProductPricing record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account the price override applies to."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency the override price is expressed in."},"price":{"type":"number","format":"double","example":"4.32","description":"Price applied for this product when sold to this account, in the specified currency."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product whose price is overridden for the account."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AccountRelation":{"description":"Link between two related accounts, such as partners or a supplier and its customer; its labels give the kind of relationship.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account1":{"type":"string","format":"uri","description":"One side of the account-to-account relationship.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"account2":{"type":"string","format":"uri","description":"Other side of the account-to-account relationship.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"account1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the first related account."},"account2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the second related account."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","account1","account2","account1_id","account2_id"]},"createAccountRelationInput":{"description":"Field values of a new AccountRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the first related account."},"account2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the second related account."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["account1_id","account2_id"]},"updateAccountRelationInput":{"description":"Field values to change on an AccountRelation record; fields left out keep their values.","properties":{"account1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the first related account."},"account2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the second related account."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAccountRelationInput":{"description":"Field values of an AccountRelation record to create, or to update when its id is set.","properties":{"account1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the first related account."},"account2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the second related account."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AccountRelationLabel":{"description":"Relationship type assigned to a link between two accounts, such as Partner or Supplier.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_relation":{"type":"string","format":"uri","description":"Account relationship being labelled.\n\nRelated AccountRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AccountRelation' for its fields."},"account_relation_type":{"type":"string","format":"uri","description":"Type of the relationship (e.g. partner, supplier).\n\nRelated AccountRelationType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AccountRelationType' for its fields."},"account_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account relationship."},"account_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the relationship type."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","account_relation","account_relation_type","account_relation_id","account_relation_type_id"]},"createAccountRelationLabelInput":{"description":"Field values of a new AccountRelationLabel record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AccountRelation record."}},"description":"Account relationship being labelled.\n\nRelated AccountRelation record; see 'createAccountRelationInput' for its fields."},"account_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account relationship."},"account_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the relationship type."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["account_relation","account_relation_id","account_relation_type_id"]},"updateAccountRelationLabelInput":{"description":"Field values to change on an AccountRelationLabel record; fields left out keep their values.","properties":{"account_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AccountRelation record."}},"description":"Account relationship being labelled.\n\nRelated AccountRelation record; see 'updateAccountRelationInput' for its fields."},"account_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account relationship."},"account_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the relationship type."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAccountRelationLabelInput":{"description":"Field values of an AccountRelationLabel record to create, or to update when its id is set.","properties":{"account_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AccountRelation record."}},"description":"Account relationship being labelled.\n\nRelated AccountRelation record; see 'updateAccountRelationInput' for its fields."},"account_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account relationship."},"account_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the relationship type."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AccountRelationType":{"description":"Kind of relationship that can be assigned to a link between two accounts, such as Partner or Supplier, with its display color.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the relationship type label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"label":{"type":"string","example":"string","description":"Display label of the account-to-account relationship type (e.g. Partner, Supplier)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","color"]},"createAccountRelationTypeInput":{"description":"Field values of a new AccountRelationType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the relationship type label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"label":{"type":"string","example":"string","description":"Display label of the account-to-account relationship type (e.g. Partner, Supplier)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["color"]},"updateAccountRelationTypeInput":{"description":"Field values to change on an AccountRelationType record; fields left out keep their values.","properties":{"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the relationship type label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"label":{"type":"string","example":"string","description":"Display label of the account-to-account relationship type (e.g. Partner, Supplier)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAccountRelationTypeInput":{"description":"Field values of an AccountRelationType record to create, or to update when its id is set.","properties":{"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the relationship type label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"label":{"type":"string","example":"string","description":"Display label of the account-to-account relationship type (e.g. Partner, Supplier)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AccountRole":{"description":"Role a contact can hold at an account, configurable per space and assigned on the link between the contact and the account.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the role label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"label":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","color","label"]},"createAccountRoleInput":{"description":"Field values of a new AccountRole record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the role label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"label":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["color","label"]},"updateAccountRoleInput":{"description":"Field values to change on an AccountRole record; fields left out keep their values.","properties":{"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the role label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"label":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAccountRoleInput":{"description":"Field values of an AccountRole record to create, or to update when its id is set.","properties":{"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the role label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"label":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AccountSharingClientRelation":{"description":"Sharing of an account with a user, as a watcher or an editor.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account being shared.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"client":{"type":"string","format":"uri","description":"User the account is shared with.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared account."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"role":{"type":"integer","description":"Access the sharing gives the user on the account: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","account","client","account_id","client_id"]},"createAccountSharingClientRelationInput":{"description":"Field values of a new AccountSharingClientRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared account."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"role":{"type":"integer","description":"Access the sharing gives the user on the account: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["account_id","client_id"]},"updateAccountSharingClientRelationInput":{"description":"Field values to change on an AccountSharingClientRelation record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared account."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"role":{"type":"integer","description":"Access the sharing gives the user on the account: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAccountSharingClientRelationInput":{"description":"Field values of an AccountSharingClientRelation record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared account."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"role":{"type":"integer","description":"Access the sharing gives the user on the account: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AccountSharingSalesUnitRelation":{"description":"Sharing of an account with a sales unit, as a watcher or an editor.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account being shared.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the account is shared with.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared account."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the account: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","account","unit","account_id","unit_id"]},"createAccountSharingSalesUnitRelationInput":{"description":"Field values of a new AccountSharingSalesUnitRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared account."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the account: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["account_id","unit_id"]},"updateAccountSharingSalesUnitRelationInput":{"description":"Field values to change on an AccountSharingSalesUnitRelation record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared account."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the account: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAccountSharingSalesUnitRelationInput":{"description":"Field values of an AccountSharingSalesUnitRelation record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared account."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the account: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AccountSocialRelation":{"description":"Social network profiles of an account, such as its LinkedIn, Twitter or Facebook pages.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity. Must match with Account id.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"angellist_url":{"type":"string","example":"string","description":"AngelList profile URL of the account."},"crunchbase_url":{"type":"string","example":"string","description":"Crunchbase profile URL of the account."},"disqus_url":{"type":"string","example":"string","description":"Disqus profile URL of the account."},"facebook_id":{"type":"string","example":"string","description":"Facebook page or profile id of the account."},"facebook_url":{"type":"string","example":"string","description":"Facebook profile URL of the account."},"flickr_url":{"type":"string","example":"string","description":"Flickr profile URL of the account."},"foursquare_url":{"type":"string","example":"string","description":"Foursquare profile URL of the account."},"google_id":{"type":"string","example":"string","description":"Google business or profile id of the account."},"google_plus_url":{"type":"string","example":"string","description":"Google+ profile URL of the account."},"gravatar_url":{"type":"string","example":"string","description":"Gravatar profile URL of the account."},"klout_url":{"type":"string","example":"string","description":"Klout profile URL of the account."},"linkedin_id":{"type":"string","example":"string","description":"LinkedIn company or profile id of the account."},"linkedin_url":{"type":"string","example":"string","description":"LinkedIn profile URL of the account."},"pinterest_url":{"type":"string","example":"string","description":"Pinterest profile URL of the account."},"quora_url":{"type":"string","example":"string","description":"Quora profile URL of the account."},"reddit_url":{"type":"string","example":"string","description":"Reddit profile URL of the account."},"skype_url":{"type":"string","example":"string","description":"Skype contact URL or username of the account."},"slideshare_url":{"type":"string","example":"string","description":"SlideShare profile URL of the account."},"twitter_id":{"type":"string","example":"string","description":"Twitter (X) user id of the account."},"twitter_url":{"type":"string","example":"string","description":"Twitter (X) profile URL of the account."},"vimeo_url":{"type":"string","example":"string","description":"Vimeo profile URL of the account."},"wordpress_url":{"type":"string","example":"string","description":"WordPress site URL of the account."},"xing_url":{"type":"string","example":"string","description":"XING profile URL of the account."},"yahoo_url":{"type":"string","example":"string","description":"Yahoo profile URL of the account."},"yelp_url":{"type":"string","example":"string","description":"Yelp business URL of the account."},"youtube_url":{"type":"string","example":"string","description":"YouTube channel URL of the account."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id"]},"createAccountSocialRelationInput":{"description":"Field values of a new AccountSocialRelation record.","properties":{"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity. Must match with Account id.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"angellist_url":{"type":"string","example":"string","description":"AngelList profile URL of the account."},"crunchbase_url":{"type":"string","example":"string","description":"Crunchbase profile URL of the account."},"disqus_url":{"type":"string","example":"string","description":"Disqus profile URL of the account."},"facebook_id":{"type":"string","example":"string","description":"Facebook page or profile id of the account."},"facebook_url":{"type":"string","example":"string","description":"Facebook profile URL of the account."},"flickr_url":{"type":"string","example":"string","description":"Flickr profile URL of the account."},"foursquare_url":{"type":"string","example":"string","description":"Foursquare profile URL of the account."},"google_id":{"type":"string","example":"string","description":"Google business or profile id of the account."},"google_plus_url":{"type":"string","example":"string","description":"Google+ profile URL of the account."},"gravatar_url":{"type":"string","example":"string","description":"Gravatar profile URL of the account."},"klout_url":{"type":"string","example":"string","description":"Klout profile URL of the account."},"linkedin_id":{"type":"string","example":"string","description":"LinkedIn company or profile id of the account."},"linkedin_url":{"type":"string","example":"string","description":"LinkedIn profile URL of the account."},"pinterest_url":{"type":"string","example":"string","description":"Pinterest profile URL of the account."},"quora_url":{"type":"string","example":"string","description":"Quora profile URL of the account."},"reddit_url":{"type":"string","example":"string","description":"Reddit profile URL of the account."},"skype_url":{"type":"string","example":"string","description":"Skype contact URL or username of the account."},"slideshare_url":{"type":"string","example":"string","description":"SlideShare profile URL of the account."},"twitter_id":{"type":"string","example":"string","description":"Twitter (X) user id of the account."},"twitter_url":{"type":"string","example":"string","description":"Twitter (X) profile URL of the account."},"vimeo_url":{"type":"string","example":"string","description":"Vimeo profile URL of the account."},"wordpress_url":{"type":"string","example":"string","description":"WordPress site URL of the account."},"xing_url":{"type":"string","example":"string","description":"XING profile URL of the account."},"yahoo_url":{"type":"string","example":"string","description":"Yahoo profile URL of the account."},"yelp_url":{"type":"string","example":"string","description":"Yelp business URL of the account."},"youtube_url":{"type":"string","example":"string","description":"YouTube channel URL of the account."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["id"]},"updateAccountSocialRelationInput":{"description":"Field values to change on an AccountSocialRelation record; fields left out keep their values.","properties":{"angellist_url":{"type":"string","example":"string","description":"AngelList profile URL of the account."},"crunchbase_url":{"type":"string","example":"string","description":"Crunchbase profile URL of the account."},"disqus_url":{"type":"string","example":"string","description":"Disqus profile URL of the account."},"facebook_id":{"type":"string","example":"string","description":"Facebook page or profile id of the account."},"facebook_url":{"type":"string","example":"string","description":"Facebook profile URL of the account."},"flickr_url":{"type":"string","example":"string","description":"Flickr profile URL of the account."},"foursquare_url":{"type":"string","example":"string","description":"Foursquare profile URL of the account."},"google_id":{"type":"string","example":"string","description":"Google business or profile id of the account."},"google_plus_url":{"type":"string","example":"string","description":"Google+ profile URL of the account."},"gravatar_url":{"type":"string","example":"string","description":"Gravatar profile URL of the account."},"klout_url":{"type":"string","example":"string","description":"Klout profile URL of the account."},"linkedin_id":{"type":"string","example":"string","description":"LinkedIn company or profile id of the account."},"linkedin_url":{"type":"string","example":"string","description":"LinkedIn profile URL of the account."},"pinterest_url":{"type":"string","example":"string","description":"Pinterest profile URL of the account."},"quora_url":{"type":"string","example":"string","description":"Quora profile URL of the account."},"reddit_url":{"type":"string","example":"string","description":"Reddit profile URL of the account."},"skype_url":{"type":"string","example":"string","description":"Skype contact URL or username of the account."},"slideshare_url":{"type":"string","example":"string","description":"SlideShare profile URL of the account."},"twitter_id":{"type":"string","example":"string","description":"Twitter (X) user id of the account."},"twitter_url":{"type":"string","example":"string","description":"Twitter (X) profile URL of the account."},"vimeo_url":{"type":"string","example":"string","description":"Vimeo profile URL of the account."},"wordpress_url":{"type":"string","example":"string","description":"WordPress site URL of the account."},"xing_url":{"type":"string","example":"string","description":"XING profile URL of the account."},"yahoo_url":{"type":"string","example":"string","description":"Yahoo profile URL of the account."},"yelp_url":{"type":"string","example":"string","description":"Yelp business URL of the account."},"youtube_url":{"type":"string","example":"string","description":"YouTube channel URL of the account."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAccountSocialRelationInput":{"description":"Field values of an AccountSocialRelation record to create, or to update when its id is set.","properties":{"angellist_url":{"type":"string","example":"string","description":"AngelList profile URL of the account."},"crunchbase_url":{"type":"string","example":"string","description":"Crunchbase profile URL of the account."},"disqus_url":{"type":"string","example":"string","description":"Disqus profile URL of the account."},"facebook_id":{"type":"string","example":"string","description":"Facebook page or profile id of the account."},"facebook_url":{"type":"string","example":"string","description":"Facebook profile URL of the account."},"flickr_url":{"type":"string","example":"string","description":"Flickr profile URL of the account."},"foursquare_url":{"type":"string","example":"string","description":"Foursquare profile URL of the account."},"google_id":{"type":"string","example":"string","description":"Google business or profile id of the account."},"google_plus_url":{"type":"string","example":"string","description":"Google+ profile URL of the account."},"gravatar_url":{"type":"string","example":"string","description":"Gravatar profile URL of the account."},"klout_url":{"type":"string","example":"string","description":"Klout profile URL of the account."},"linkedin_id":{"type":"string","example":"string","description":"LinkedIn company or profile id of the account."},"linkedin_url":{"type":"string","example":"string","description":"LinkedIn profile URL of the account."},"pinterest_url":{"type":"string","example":"string","description":"Pinterest profile URL of the account."},"quora_url":{"type":"string","example":"string","description":"Quora profile URL of the account."},"reddit_url":{"type":"string","example":"string","description":"Reddit profile URL of the account."},"skype_url":{"type":"string","example":"string","description":"Skype contact URL or username of the account."},"slideshare_url":{"type":"string","example":"string","description":"SlideShare profile URL of the account."},"twitter_id":{"type":"string","example":"string","description":"Twitter (X) user id of the account."},"twitter_url":{"type":"string","example":"string","description":"Twitter (X) profile URL of the account."},"vimeo_url":{"type":"string","example":"string","description":"Vimeo profile URL of the account."},"wordpress_url":{"type":"string","example":"string","description":"WordPress site URL of the account."},"xing_url":{"type":"string","example":"string","description":"XING profile URL of the account."},"yahoo_url":{"type":"string","example":"string","description":"Yahoo profile URL of the account."},"yelp_url":{"type":"string","example":"string","description":"Yelp business URL of the account."},"youtube_url":{"type":"string","example":"string","description":"YouTube channel URL of the account."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AccountType":{"description":"Configurable category of accounts that defines the form layout and settings used for accounts of that type.","properties":{"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"form_edit_api":{"type":"object","description":"Typed, read-only view of a form layout of this type: form_edit_api mirrors the edit form (form_edit), form_lost_api the form shown when archiving as lost (form_lost)."},"can_change_readonly":{"type":"boolean","example":false,"description":"False for types whose read-only setting is fixed, such as the recurrent appointment type; true otherwise."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the edit form layout used by the UI when creating or editing accounts of this type. Contains tabs, sections, and field placement. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the account type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["has_draft","is_delete_protected","form_edit_api","id","is_readonly","name","settings"]},"createAccountTypeInput":{"description":"Field values of a new AccountType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the edit form layout used by the UI when creating or editing accounts of this type. Contains tabs, sections, and field placement. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the account type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_readonly","name","settings"]},"updateAccountTypeInput":{"description":"Field values to change on an AccountType record; fields left out keep their values.","properties":{"form_edit":{"type":"object","description":"JSON definition of the edit form layout used by the UI when creating or editing accounts of this type. Contains tabs, sections, and field placement. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the account type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAccountTypeInput":{"description":"Field values of an AccountType record to create, or to update when its id is set.","properties":{"form_edit":{"type":"object","description":"JSON definition of the edit form layout used by the UI when creating or editing accounts of this type. Contains tabs, sections, and field placement. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the account type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Activity":{"description":"Task or appointment: the common view of the to-dos and meetings of the sales team, linked to the records they concern.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"active_reminder":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the next pending reminder configured for the activity (reminder time, due date or end date as applicable). Empty when no reminder is pending."},"media_transcription_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked Media record holding the activity's call recording / transcription, when available."}},"required":["is_delete_protected","id"]},"ActivityComment":{"description":"Comment written by a user on a task or an appointment.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment":{"type":"string","format":"uri","description":"Appointment this comment belongs to. Set when activity_id resolves to an Appointment; otherwise empty.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"task":{"type":"string","format":"uri","description":"Task this comment belongs to. Set when activity_id resolves to a Task; otherwise empty.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"owner":{"type":"string","format":"uri","description":"User who authored the comment.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task the comment belongs to."},"comment":{"type":"string","example":"string","description":"Free-form text body of the comment."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the comment author."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","owner","activity_id","comment","owner_id"]},"createActivityCommentInput":{"description":"Field values of a new ActivityComment record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task the comment belongs to."},"comment":{"type":"string","example":"string","description":"Free-form text body of the comment."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the comment author."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["activity_id","comment","owner_id"]},"updateActivityCommentInput":{"description":"Field values to change on an ActivityComment record; fields left out keep their values.","properties":{"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task the comment belongs to."},"comment":{"type":"string","example":"string","description":"Free-form text body of the comment."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the comment author."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchActivityCommentInput":{"description":"Field values of an ActivityComment record to create, or to update when its id is set.","properties":{"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task the comment belongs to."},"comment":{"type":"string","example":"string","description":"Free-form text body of the comment."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the comment author."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ActivityDataExRelation":{"description":"Option selected in a multi-select checkbox field of a task or an appointment; there is one link per selected option.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment":{"type":"string","format":"uri","description":"Appointment on which the option is selected; empty when activity_id is a task.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"task":{"type":"string","format":"uri","description":"Task on which the option is selected; empty when activity_id is an appointment.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"data":{"type":"string","format":"uri","description":"Option selected in the multi-select field; it belongs to the data set given by data_set_id.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task on which the option is selected."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","data","activity_id","data_id","data_set_id"]},"ActivityKPI":{"description":"Recorded KPI event of a task or an appointment, such as its creation or completion, used in KPI reports.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment":{"type":"string","format":"uri","description":"Appointment this KPI event relates to. Set when activity_id resolves to an Appointment; otherwise empty.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"task":{"type":"string","format":"uri","description":"Task this KPI event relates to. Set when activity_id resolves to a Task; otherwise empty.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"client":{"type":"string","format":"uri","description":"User who triggered the KPI event (e.g. created or completed the activity).\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"owner":{"type":"string","format":"uri","description":"Activity owner at the time the KPI event occurred.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the triggering user belonged to at the time of the event.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task the KPI event relates to."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: ActivityCreate, ActivityCompleted or LastModified.\n\nInteger enum value: 1 - ActivityCreate, 2 - ActivityCompleted, 3 - LastModified","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The activity was created.","2":"The activity was completed.","3":"The activity was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the activity owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","unit","activity_id","kpi","unit_id"]},"createActivityKPIInput":{"description":"Field values of a new ActivityKPI record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task the KPI event relates to."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: ActivityCreate, ActivityCompleted or LastModified.\n\nInteger enum value: 1 - ActivityCreate, 2 - ActivityCompleted, 3 - LastModified","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The activity was created.","2":"The activity was completed.","3":"The activity was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the activity owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["activity_id","kpi","unit_id"]},"updateActivityKPIInput":{"description":"Field values to change on an ActivityKPI record; fields left out keep their values.","properties":{"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task the KPI event relates to."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: ActivityCreate, ActivityCompleted or LastModified.\n\nInteger enum value: 1 - ActivityCreate, 2 - ActivityCompleted, 3 - LastModified","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The activity was created.","2":"The activity was completed.","3":"The activity was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the activity owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchActivityKPIInput":{"description":"Field values of an ActivityKPI record to create, or to update when its id is set.","properties":{"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task the KPI event relates to."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: ActivityCreate, ActivityCompleted or LastModified.\n\nInteger enum value: 1 - ActivityCreate, 2 - ActivityCompleted, 3 - LastModified","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The activity was created.","2":"The activity was completed.","3":"The activity was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the activity owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ActivityRelation":{"description":"Link of a task or an appointment to a record it concerns, such as an account, contact, lead, opportunity, project or quote.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account the activity is linked to, or empty when not linked to an account.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"appointment":{"type":"string","format":"uri","description":"Appointment side of the link. Set when activity_id resolves to an Appointment; otherwise empty.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"task":{"type":"string","format":"uri","description":"Task side of the link. Set when activity_id resolves to a Task; otherwise empty.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact the activity is linked to, or empty when not linked to a contact.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"custom_entity":{"type":"string","format":"uri","description":"Custom entity record the activity is linked to, or empty.\n\nRelated CustomEntity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntity' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead the activity is linked to. Set when lead_oppty_id resolves to a Lead; otherwise empty.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity the activity is linked to. Set when lead_oppty_id resolves to an Opportunity; otherwise empty.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"project":{"type":"string","format":"uri","description":"Project the activity is linked to, or empty when not linked to a project.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"project_objective":{"type":"string","format":"uri","description":"Project objective the activity advances, or empty.\n\nRelated ProjectObjective record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProjectObjective' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote the activity is linked to, or empty when not linked to a quote.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task on this link."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the activity is linked to, or empty when not linked."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"project_objective_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project objective the activity advances, or empty when it is not linked to one."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Display order of the activity within its project objective. Required only when project_id is set."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","activity_id"]},"createActivityRelationInput":{"description":"Field values of a new ActivityRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"project_objective":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProjectObjective record."}},"description":"Project objective the activity advances, or empty.\n\nRelated ProjectObjective record; see 'createProjectObjectiveInput' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task on this link."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the activity is linked to, or empty when not linked."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"project_objective_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project objective the activity advances, or empty when it is not linked to one."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Display order of the activity within its project objective. Required only when project_id is set."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["activity_id"]},"updateActivityRelationInput":{"description":"Field values to change on an ActivityRelation record; fields left out keep their values.","properties":{"project_objective":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProjectObjective record."}},"description":"Project objective the activity advances, or empty.\n\nRelated ProjectObjective record; see 'updateProjectObjectiveInput' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task on this link."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the activity is linked to, or empty when not linked."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"project_objective_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project objective the activity advances, or empty when it is not linked to one."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Display order of the activity within its project objective. Required only when project_id is set."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchActivityRelationInput":{"description":"Field values of an ActivityRelation record to create, or to update when its id is set.","properties":{"project_objective":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProjectObjective record."}},"description":"Project objective the activity advances, or empty.\n\nRelated ProjectObjective record; see 'updateProjectObjectiveInput' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task on this link."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the activity is linked to, or empty when not linked."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"project_objective_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project objective the activity advances, or empty when it is not linked to one."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Display order of the activity within its project objective. Required only when project_id is set."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AllowedAccountType":{"description":"Account type that a user role is allowed to use.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_type":{"type":"string","format":"uri","description":"Account type the user role can use.\n\nRelated AccountType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AccountType' for its fields."},"master_right":{"type":"string","format":"uri","description":"User role granted access to the account type.\n\nRelated MasterRight record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MasterRight' for its fields."},"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","account_type","master_right","account_type_id","master_right_id"]},"createAllowedAccountTypeInput":{"description":"Field values of a new AllowedAccountType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["account_type_id","master_right_id"]},"updateAllowedAccountTypeInput":{"description":"Field values to change on an AllowedAccountType record; fields left out keep their values.","properties":{"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAllowedAccountTypeInput":{"description":"Field values of an AllowedAccountType record to create, or to update when its id is set.","properties":{"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AllowedAppointmentType":{"description":"Appointment type that a user role is allowed to use.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment_type":{"type":"string","format":"uri","description":"Appointment type the user role can use.\n\nRelated AppointmentType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AppointmentType' for its fields."},"master_right":{"type":"string","format":"uri","description":"User role granted access to the appointment type.\n\nRelated MasterRight record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MasterRight' for its fields."},"appointment_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","appointment_type","master_right","appointment_type_id","master_right_id"]},"createAllowedAppointmentTypeInput":{"description":"Field values of a new AllowedAppointmentType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["appointment_type_id","master_right_id"]},"updateAllowedAppointmentTypeInput":{"description":"Field values to change on an AllowedAppointmentType record; fields left out keep their values.","properties":{"appointment_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAllowedAppointmentTypeInput":{"description":"Field values of an AllowedAppointmentType record to create, or to update when its id is set.","properties":{"appointment_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AllowedCompanyEmail":{"description":"Company email address that a user role is allowed to send emails from.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"company_email":{"type":"string","format":"uri","description":"Company email address the user role can send from.\n\nRelated CompanyEmail record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CompanyEmail' for its fields."},"master_right":{"type":"string","format":"uri","description":"User role granted access to the company email address.\n\nRelated MasterRight record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MasterRight' for its fields."},"company_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company email address."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","company_email","master_right","company_email_id","master_right_id"]},"createAllowedCompanyEmailInput":{"description":"Field values of a new AllowedCompanyEmail record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"company_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company email address."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["company_email_id","master_right_id"]},"updateAllowedCompanyEmailInput":{"description":"Field values to change on an AllowedCompanyEmail record; fields left out keep their values.","properties":{"company_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company email address."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAllowedCompanyEmailInput":{"description":"Field values of an AllowedCompanyEmail record to create, or to update when its id is set.","properties":{"company_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company email address."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AllowedCompanyPhone":{"description":"Company phone number that a user role is allowed to use for calls and text messages.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"master_right":{"type":"string","format":"uri","description":"User role granted access to the company phone.\n\nRelated MasterRight record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MasterRight' for its fields."},"phone":{"type":"string","format":"uri","description":"Company phone the user role can use for calling/SMS.\n\nRelated Phone record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Phone' for its fields."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"phone_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company phone."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","master_right","phone","master_right_id","phone_id"]},"createAllowedCompanyPhoneInput":{"description":"Field values of a new AllowedCompanyPhone record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"phone_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company phone."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["master_right_id","phone_id"]},"updateAllowedCompanyPhoneInput":{"description":"Field values to change on an AllowedCompanyPhone record; fields left out keep their values.","properties":{"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"phone_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company phone."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAllowedCompanyPhoneInput":{"description":"Field values of an AllowedCompanyPhone record to create, or to update when its id is set.","properties":{"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"phone_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company phone."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AllowedContactType":{"description":"Contact type that a user role is allowed to use.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact_type":{"type":"string","format":"uri","description":"Contact type the user role can use.\n\nRelated ContactType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ContactType' for its fields."},"master_right":{"type":"string","format":"uri","description":"User role granted access to the contact type.\n\nRelated MasterRight record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MasterRight' for its fields."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","contact_type","master_right","contact_type_id","master_right_id"]},"createAllowedContactTypeInput":{"description":"Field values of a new AllowedContactType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["contact_type_id","master_right_id"]},"updateAllowedContactTypeInput":{"description":"Field values to change on an AllowedContactType record; fields left out keep their values.","properties":{"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAllowedContactTypeInput":{"description":"Field values of an AllowedContactType record to create, or to update when its id is set.","properties":{"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AllowedLeadType":{"description":"Lead type that a user role is allowed to use.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"lead_type":{"type":"string","format":"uri","description":"Lead type the user role can use.\n\nRelated LeadType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadType' for its fields."},"master_right":{"type":"string","format":"uri","description":"User role granted access to the lead type.\n\nRelated MasterRight record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MasterRight' for its fields."},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","lead_type","master_right","lead_type_id","master_right_id"]},"createAllowedLeadTypeInput":{"description":"Field values of a new AllowedLeadType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["lead_type_id","master_right_id"]},"updateAllowedLeadTypeInput":{"description":"Field values to change on an AllowedLeadType record; fields left out keep their values.","properties":{"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAllowedLeadTypeInput":{"description":"Field values of an AllowedLeadType record to create, or to update when its id is set.","properties":{"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type the user role can use."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AllowedPipeline":{"description":"Pipeline that a user role is allowed to use, optionally with access to the documents of its steps.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"master_right":{"type":"string","format":"uri","description":"User role granted access to the pipeline.\n\nRelated MasterRight record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MasterRight' for its fields."},"pipeline":{"type":"string","format":"uri","description":"Pipeline the user role can use.\n\nRelated Pipeline record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Pipeline' for its fields."},"access_step_documents":{"type":"boolean","example":false,"description":"When true, the user role can access documents attached to steps of this pipeline."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline the user role can use."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","master_right","pipeline","master_right_id","pipeline_id"]},"createAllowedPipelineInput":{"description":"Field values of a new AllowedPipeline record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"access_step_documents":{"type":"boolean","example":false,"description":"When true, the user role can access documents attached to steps of this pipeline."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline the user role can use."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["master_right_id","pipeline_id"]},"updateAllowedPipelineInput":{"description":"Field values to change on an AllowedPipeline record; fields left out keep their values.","properties":{"access_step_documents":{"type":"boolean","example":false,"description":"When true, the user role can access documents attached to steps of this pipeline."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline the user role can use."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAllowedPipelineInput":{"description":"Field values of an AllowedPipeline record to create, or to update when its id is set.","properties":{"access_step_documents":{"type":"boolean","example":false,"description":"When true, the user role can access documents attached to steps of this pipeline."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline the user role can use."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AllowedQuoteType":{"description":"Quote type that a user role is allowed to use.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"master_right":{"type":"string","format":"uri","description":"User role granted access to the quote type.\n\nRelated MasterRight record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MasterRight' for its fields."},"quote_type":{"type":"string","format":"uri","description":"Quote type the user role can use.\n\nRelated QuoteType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'QuoteType' for its fields."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"quote_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote type the user role can use."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","master_right","quote_type","master_right_id","quote_type_id"]},"createAllowedQuoteTypeInput":{"description":"Field values of a new AllowedQuoteType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"quote_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote type the user role can use."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["master_right_id","quote_type_id"]},"updateAllowedQuoteTypeInput":{"description":"Field values to change on an AllowedQuoteType record; fields left out keep their values.","properties":{"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"quote_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote type the user role can use."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAllowedQuoteTypeInput":{"description":"Field values of an AllowedQuoteType record to create, or to update when its id is set.","properties":{"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"quote_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote type the user role can use."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AllowedTaskType":{"description":"Task type that a user role is allowed to use.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"master_right":{"type":"string","format":"uri","description":"User role granted access to the task type.\n\nRelated MasterRight record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MasterRight' for its fields."},"task_type":{"type":"string","format":"uri","description":"Task type the user role can use.\n\nRelated TaskType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TaskType' for its fields."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"task_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task type the user role can use."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","master_right","task_type","master_right_id","task_type_id"]},"createAllowedTaskTypeInput":{"description":"Field values of a new AllowedTaskType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"task_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task type the user role can use."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["master_right_id","task_type_id"]},"updateAllowedTaskTypeInput":{"description":"Field values to change on an AllowedTaskType record; fields left out keep their values.","properties":{"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"task_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task type the user role can use."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAllowedTaskTypeInput":{"description":"Field values of an AllowedTaskType record to create, or to update when its id is set.","properties":{"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"task_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task type the user role can use."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ApiAccess":{"description":"API credentials that an integration uses to access the space, with the parts of the API they may read or write.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity. Must match with Application id.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email":{"type":"string","example":"string","description":"Contact email associated with this API access. Used for credential change notifications."},"is_active":{"type":"boolean","example":false,"description":"Whether this API access can authenticate. Set to false to disable the credentials without deleting the record; existing tokens stop working immediately."},"last_used":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent successful authentication using this API access. Updated automatically on each use; empty for credentials that have never been used."},"permissions":{"type":"object","description":"Per-section access permissions (records, administration, misc) granted to this API access. Determines which entities and operations the credentials can read or write."},"type":{"type":"integer","description":"Authentication type of this API access (e.g. standard API key vs. OAuth client). Set automatically on create and cannot be changed.\n\nInteger enum value: 1 - Basic, 2 - OAuth","example":1,"enum":[1,2],"readOnly":true,"x-enumDescriptions":{"1":"Authenticates with an access key and secret sent as HTTP Basic credentials.","2":"Authenticates as an OAuth 2 application."}},"name":{"type":"string","example":"string","description":"Name for the api access."},"username":{"type":"string","example":"string","description":"Username portion of the API credentials issued for this access."},"plain_password":{"type":"string","example":"string","description":"Plain-text password issued for this API access. Returned only at create time and for migrated legacy access; otherwise empty. Integrators must store it on receipt — it is not retrievable later."}},"required":["is_delete_protected","id","type","name"]},"Appointment":{"description":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"active_reminder":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the next pending reminder configured for the activity (reminder time, due date or end date as applicable). Empty when no reminder is pending."},"media_transcription_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked Media record holding the activity's call recording / transcription, when available."},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"activity_type":{"type":"string","format":"uri","description":"Appointment type that classifies this appointment. Drives form layout and icon.\n\nRelated AppointmentType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AppointmentType' for its fields."},"currency_exchange_rates_list":{"type":"string","format":"uri","description":"Currency exchange rate list used to convert monetary fields linked to this appointment. Empty to inherit the team space default.\n\nRelated CurrencyExchangeRatesList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRatesList' for its fields."},"owner":{"type":"string","format":"uri","description":"Sales user who owns this appointment.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"recurrence_master":{"type":"string","format":"uri","description":"Master appointment of the recurring series this occurrence belongs to. Empty for standalone appointments and for the master itself.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"schedule":{"type":"string","format":"uri","description":"Appointment schedule (booking link) this appointment was created through, or empty for appointments created directly.\n\nRelated AppointmentSchedule record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AppointmentSchedule' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit this appointment is assigned to. Determines which team members can see the record under unit-based sharing.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"activity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this appointment."},"description":{"type":"string","example":"string","description":"Free-form description of the appointment."},"duration":{"type":"number","format":"double","example":"4.32","description":"Duration of the appointment, derived from start/end dates."},"end_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"End timestamp of the appointment."},"invitees_can_edit":{"type":"boolean","example":false,"description":"True when invitees are allowed to edit the appointment. Defaults to false."},"is_recurrence_active":{"type":"boolean","example":false,"description":"True when the recurrence series is still generating new occurrences. Read-only."},"is_recurrence_exception":{"type":"boolean","example":false,"description":"True when this occurrence has been modified independently of the recurring series. Read-only."},"location":{"type":"string","example":"string","description":"Free-text physical location of the appointment."},"meeting_url":{"type":"object","description":"Online meeting link associated with the appointment (join URL plus meeting type, e.g. Zoom, Teams). Empty when the appointment has no online meeting attached."},"occurence_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Original date of this occurrence in the recurring series. Set automatically."},"organizer":{"type":"string","example":"string","description":"Email of the user organising the appointment. Set automatically and used as the reply-to address in invitation emails."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment owner."},"recurrence_master_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the master appointment."},"recurrence_rule":{"type":"string","example":"string","description":"iCalendar RRULE string describing the recurrence pattern (e.g. \"FREQ=WEEKLY;BYDAY=MO,WE\"). Empty for non-recurring appointments."},"recurrence_tzid":{"type":"string","example":"string","description":"IANA timezone the recurrence rule is evaluated in."},"schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment schedule."},"schedule_tzid":{"type":"string","example":"string","description":"IANA timezone the appointment was booked in (e.g. \"Europe/Bratislava\"). Used to evaluate availability against the schedule."},"start_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Start timestamp of the appointment."},"subject":{"type":"string","example":"string","description":"Short summary line shown in calendars and lists."},"table_name":{"type":"string","example":"string","description":"Discriminator identifying the concrete record type — always \"appointment\" for Appointment records. Read-only; useful when consuming polymorphic Activity results.","readOnly":true},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"status":{"type":"integer","description":"Current status of the appointment (NotStarted, InProgress, Completed, Canceled). Read-only; derived from the start/end times and the deleted flag.\n\nInteger enum value: 1 - NotStarted, 2 - InProgress, 3 - Waiting, 4 - Completed, 5 - Deferred, 6 - Canceled","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Task not started yet, or appointment that starts in the future.","2":"Task being worked on, or appointment taking place now.","3":"Task waiting on someone or something else.","4":"Task done, or appointment that has already ended.","5":"Task postponed.","6":"Appointment that was canceled."}},"account_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityRelation' for its fields."},"description":"Accounts this appointment is linked to."},"contact_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityRelation' for its fields."},"description":"Contacts this appointment is linked to."},"lead_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityRelation' for its fields."},"description":"Leads this appointment is linked to."},"opportunity_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityRelation' for its fields."},"description":"Opportunities this appointment is linked to."},"project_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityRelation' for its fields."},"description":"Projects this appointment is linked to, including the per-objective ordering."},"quote_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityRelation' for its fields."},"description":"Quotes this appointment is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityRelation' for its fields."},"description":"Custom entity records this appointment is linked to."},"invitees_contacts":{"type":"array","items":{"type":"string","format":"uri","description":"Related AppointmentContactInviteesRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AppointmentContactInviteesRelation' for its fields."},"description":"Non-user invitees on this appointment, identified by email. Contacts are auto-linked when their email matches an existing Contact record."},"invitees_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related AppointmentClientInviteesRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AppointmentClientInviteesRelation' for its fields."},"description":"Internal-user invitees on this appointment."},"exchange_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"gapi_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"o365_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"has_3rd_party_mapping":{"type":"boolean","example":false,"description":"True when this appointment is mirrored to an external calendar (Office 365, Exchange, Google). Read-only."},"reminder":{"type":"string","format":"uri","description":"Reminder set by the current authenticated user for this appointment. Per-user; empty when no reminder has been set.\n\nRelated AppointmentReminder record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AppointmentReminder' for its fields."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Documents linked to this appointment."},"comments":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityComment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityComment' for its fields."},"description":"Comments authored on this appointment."},"tags":{"type":"array","items":{"type":"string","format":"uri","description":"Related TagRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TagRelation' for its fields."},"description":"Tag labels applied to this appointment."},"formatted_name":{"type":"string","example":"string","description":"Display name of the appointment (alias of subject)."},"recurrence":{"type":"object","description":"Recurrence configuration for recurring appointments (parsed RRULE plus exception metadata). Empty for one-off appointments."},"modified_by_user":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent modification made by an end user (excluding system changes). Read-only; computed by Coevera."}},"required":["is_delete_protected","id","activity_type","owner","unit","end_date","owner_id","subject","table_name","status","has_3rd_party_mapping","formatted_name"]},"createAppointmentInput":{"description":"Field values of a new Appointment record.","properties":{"media_transcription_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked Media record holding the activity's call recording / transcription, when available."},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"activity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this appointment."},"description":{"type":"string","example":"string","description":"Free-form description of the appointment."},"duration":{"type":"number","format":"double","example":"4.32","description":"Duration of the appointment, derived from start/end dates."},"end_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"End timestamp of the appointment."},"invitees_can_edit":{"type":"boolean","example":false,"description":"True when invitees are allowed to edit the appointment. Defaults to false."},"is_recurrence_active":{"type":"boolean","example":false,"description":"True when the recurrence series is still generating new occurrences. Read-only."},"is_recurrence_exception":{"type":"boolean","example":false,"description":"True when this occurrence has been modified independently of the recurring series. Read-only."},"location":{"type":"string","example":"string","description":"Free-text physical location of the appointment."},"meeting_url":{"type":"object","description":"Online meeting link associated with the appointment (join URL plus meeting type, e.g. Zoom, Teams). Empty when the appointment has no online meeting attached."},"occurence_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Original date of this occurrence in the recurring series. Set automatically."},"organizer":{"type":"string","example":"string","description":"Email of the user organising the appointment. Set automatically and used as the reply-to address in invitation emails."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment owner."},"recurrence_master_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the master appointment."},"recurrence_rule":{"type":"string","example":"string","description":"iCalendar RRULE string describing the recurrence pattern (e.g. \"FREQ=WEEKLY;BYDAY=MO,WE\"). Empty for non-recurring appointments."},"recurrence_tzid":{"type":"string","example":"string","description":"IANA timezone the recurrence rule is evaluated in."},"schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment schedule."},"schedule_tzid":{"type":"string","example":"string","description":"IANA timezone the appointment was booked in (e.g. \"Europe/Bratislava\"). Used to evaluate availability against the schedule."},"start_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Start timestamp of the appointment."},"subject":{"type":"string","example":"string","description":"Short summary line shown in calendars and lists."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'createActivityRelationInput' for its fields."},"description":"Accounts this appointment is linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'createActivityRelationInput' for its fields."},"description":"Contacts this appointment is linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'createActivityRelationInput' for its fields."},"description":"Leads this appointment is linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'createActivityRelationInput' for its fields."},"description":"Opportunities this appointment is linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'createActivityRelationInput' for its fields."},"description":"Projects this appointment is linked to, including the per-objective ordering."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'createActivityRelationInput' for its fields."},"description":"Quotes this appointment is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'createActivityRelationInput' for its fields."},"description":"Custom entity records this appointment is linked to."},"invitees_contacts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AppointmentContactInviteesRelation record."}},"description":"Related AppointmentContactInviteesRelation record; see 'createAppointmentContactInviteesRelationInput' for its fields."},"description":"Non-user invitees on this appointment, identified by email. Contacts are auto-linked when their email matches an existing Contact record."},"invitees_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AppointmentClientInviteesRelation record."}},"description":"Related AppointmentClientInviteesRelation record; see 'createAppointmentClientInviteesRelationInput' for its fields."},"description":"Internal-user invitees on this appointment."},"reminder":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AppointmentReminder record."}},"description":"Reminder set by the current authenticated user for this appointment. Per-user; empty when no reminder has been set.\n\nRelated AppointmentReminder record; see 'createAppointmentReminderInput' for its fields."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Documents linked to this appointment."},"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityComment record."}},"description":"Related ActivityComment record; see 'createActivityCommentInput' for its fields."},"description":"Comments authored on this appointment."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'createTagRelationInput' for its fields."},"description":"Tag labels applied to this appointment."}},"required":["end_date","owner_id","subject"]},"updateAppointmentInput":{"description":"Field values to change on an Appointment record; fields left out keep their values.","properties":{"media_transcription_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked Media record holding the activity's call recording / transcription, when available."},"activity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this appointment."},"description":{"type":"string","example":"string","description":"Free-form description of the appointment."},"duration":{"type":"number","format":"double","example":"4.32","description":"Duration of the appointment, derived from start/end dates."},"end_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"End timestamp of the appointment."},"invitees_can_edit":{"type":"boolean","example":false,"description":"True when invitees are allowed to edit the appointment. Defaults to false."},"is_recurrence_active":{"type":"boolean","example":false,"description":"True when the recurrence series is still generating new occurrences. Read-only."},"is_recurrence_exception":{"type":"boolean","example":false,"description":"True when this occurrence has been modified independently of the recurring series. Read-only."},"location":{"type":"string","example":"string","description":"Free-text physical location of the appointment."},"meeting_url":{"type":"object","description":"Online meeting link associated with the appointment (join URL plus meeting type, e.g. Zoom, Teams). Empty when the appointment has no online meeting attached."},"occurence_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Original date of this occurrence in the recurring series. Set automatically."},"organizer":{"type":"string","example":"string","description":"Email of the user organising the appointment. Set automatically and used as the reply-to address in invitation emails."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment owner."},"recurrence_master_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the master appointment."},"recurrence_rule":{"type":"string","example":"string","description":"iCalendar RRULE string describing the recurrence pattern (e.g. \"FREQ=WEEKLY;BYDAY=MO,WE\"). Empty for non-recurring appointments."},"recurrence_tzid":{"type":"string","example":"string","description":"IANA timezone the recurrence rule is evaluated in."},"schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment schedule."},"schedule_tzid":{"type":"string","example":"string","description":"IANA timezone the appointment was booked in (e.g. \"Europe/Bratislava\"). Used to evaluate availability against the schedule."},"start_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Start timestamp of the appointment."},"subject":{"type":"string","example":"string","description":"Short summary line shown in calendars and lists."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Accounts this appointment is linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Contacts this appointment is linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Leads this appointment is linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Opportunities this appointment is linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Projects this appointment is linked to, including the per-objective ordering."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Quotes this appointment is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Custom entity records this appointment is linked to."},"invitees_contacts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AppointmentContactInviteesRelation record."}},"description":"Related AppointmentContactInviteesRelation record; see 'updateAppointmentContactInviteesRelationInput' for its fields."},"description":"Non-user invitees on this appointment, identified by email. Contacts are auto-linked when their email matches an existing Contact record."},"invitees_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AppointmentClientInviteesRelation record."}},"description":"Related AppointmentClientInviteesRelation record; see 'updateAppointmentClientInviteesRelationInput' for its fields."},"description":"Internal-user invitees on this appointment."},"exchange_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"gapi_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"o365_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this appointment."},"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityComment record."}},"description":"Related ActivityComment record; see 'updateActivityCommentInput' for its fields."},"description":"Comments authored on this appointment."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this appointment."}}},"batchAppointmentInput":{"description":"Field values of an Appointment record to create, or to update when its id is set.","properties":{"media_transcription_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked Media record holding the activity's call recording / transcription, when available."},"activity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this appointment."},"description":{"type":"string","example":"string","description":"Free-form description of the appointment."},"duration":{"type":"number","format":"double","example":"4.32","description":"Duration of the appointment, derived from start/end dates."},"end_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"End timestamp of the appointment."},"invitees_can_edit":{"type":"boolean","example":false,"description":"True when invitees are allowed to edit the appointment. Defaults to false."},"is_recurrence_active":{"type":"boolean","example":false,"description":"True when the recurrence series is still generating new occurrences. Read-only."},"is_recurrence_exception":{"type":"boolean","example":false,"description":"True when this occurrence has been modified independently of the recurring series. Read-only."},"location":{"type":"string","example":"string","description":"Free-text physical location of the appointment."},"meeting_url":{"type":"object","description":"Online meeting link associated with the appointment (join URL plus meeting type, e.g. Zoom, Teams). Empty when the appointment has no online meeting attached."},"occurence_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Original date of this occurrence in the recurring series. Set automatically."},"organizer":{"type":"string","example":"string","description":"Email of the user organising the appointment. Set automatically and used as the reply-to address in invitation emails."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment owner."},"recurrence_master_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the master appointment."},"recurrence_rule":{"type":"string","example":"string","description":"iCalendar RRULE string describing the recurrence pattern (e.g. \"FREQ=WEEKLY;BYDAY=MO,WE\"). Empty for non-recurring appointments."},"recurrence_tzid":{"type":"string","example":"string","description":"IANA timezone the recurrence rule is evaluated in."},"schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment schedule."},"schedule_tzid":{"type":"string","example":"string","description":"IANA timezone the appointment was booked in (e.g. \"Europe/Bratislava\"). Used to evaluate availability against the schedule."},"start_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Start timestamp of the appointment."},"subject":{"type":"string","example":"string","description":"Short summary line shown in calendars and lists."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Accounts this appointment is linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Contacts this appointment is linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Leads this appointment is linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Opportunities this appointment is linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Projects this appointment is linked to, including the per-objective ordering."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Quotes this appointment is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Custom entity records this appointment is linked to."},"invitees_contacts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AppointmentContactInviteesRelation record."}},"description":"Related AppointmentContactInviteesRelation record; see 'updateAppointmentContactInviteesRelationInput' for its fields."},"description":"Non-user invitees on this appointment, identified by email. Contacts are auto-linked when their email matches an existing Contact record."},"invitees_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AppointmentClientInviteesRelation record."}},"description":"Related AppointmentClientInviteesRelation record; see 'updateAppointmentClientInviteesRelationInput' for its fields."},"description":"Internal-user invitees on this appointment."},"exchange_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"gapi_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"o365_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this appointment."},"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityComment record."}},"description":"Related ActivityComment record; see 'updateActivityCommentInput' for its fields."},"description":"Comments authored on this appointment."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this appointment."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AppointmentClientInviteesRelation":{"description":"Invitation of a user of the space to an appointment, with their response.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment":{"type":"string","format":"uri","description":"Appointment the user has been invited to.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"client":{"type":"string","format":"uri","description":"Internal user invited to the appointment.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment the user has been invited to."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"response":{"type":"integer","description":"Response of the invitee to the appointment invitation: NoResponse, Accepted or Rejected.\n\nInteger enum value: 0 - NoResponse, 1 - Accepted, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The invitee has not responded yet.","1":"The invitee accepted the invitation.","2":"The invitee declined the invitation."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","appointment","client","appointment_id","client_id"]},"createAppointmentClientInviteesRelationInput":{"description":"Field values of a new AppointmentClientInviteesRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment the user has been invited to."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"response":{"type":"integer","description":"Response of the invitee to the appointment invitation: NoResponse, Accepted or Rejected.\n\nInteger enum value: 0 - NoResponse, 1 - Accepted, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The invitee has not responded yet.","1":"The invitee accepted the invitation.","2":"The invitee declined the invitation."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["appointment_id","client_id"]},"updateAppointmentClientInviteesRelationInput":{"description":"Field values to change on an AppointmentClientInviteesRelation record; fields left out keep their values.","properties":{"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment the user has been invited to."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"response":{"type":"integer","description":"Response of the invitee to the appointment invitation: NoResponse, Accepted or Rejected.\n\nInteger enum value: 0 - NoResponse, 1 - Accepted, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The invitee has not responded yet.","1":"The invitee accepted the invitation.","2":"The invitee declined the invitation."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAppointmentClientInviteesRelationInput":{"description":"Field values of an AppointmentClientInviteesRelation record to create, or to update when its id is set.","properties":{"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment the user has been invited to."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"response":{"type":"integer","description":"Response of the invitee to the appointment invitation: NoResponse, Accepted or Rejected.\n\nInteger enum value: 0 - NoResponse, 1 - Accepted, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The invitee has not responded yet.","1":"The invitee accepted the invitation.","2":"The invitee declined the invitation."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AppointmentContactInviteesRelation":{"description":"Invitation of an external person to an appointment, identified by email and matched to a contact when one exists, with their response.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment":{"type":"string","format":"uri","description":"Appointment the contact has been invited to.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"contact":{"type":"string","format":"uri","description":"Coevera Contact record matching the invitee email, when one exists.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment the contact has been invited to."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched contact."},"email":{"type":"string","example":"string","description":"Email address of the invitee. Required and used as the natural key for the link."},"first_name":{"type":"string","example":"string","description":"Given name of the invitee, when supplied."},"invitee_type":{"type":"integer","description":"How the invitee was added: invited directly on the appointment (Standard), or the person who booked it through an appointment schedule (Scheduled).\n\nInteger enum value: 0 - Standard, 1 - Scheduled","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"Invited directly on the appointment.","1":"The person who booked the appointment through an appointment schedule."}},"last_name":{"type":"string","example":"string","description":"Family name of the invitee, when supplied."},"response":{"type":"integer","description":"Response of the invitee to the appointment invitation: NoResponse, Accepted or Rejected.\n\nInteger enum value: 0 - NoResponse, 1 - Accepted, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The invitee has not responded yet.","1":"The invitee accepted the invitation.","2":"The invitee declined the invitation."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","appointment","appointment_id","email"]},"createAppointmentContactInviteesRelationInput":{"description":"Field values of a new AppointmentContactInviteesRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment the contact has been invited to."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched contact."},"email":{"type":"string","example":"string","description":"Email address of the invitee. Required and used as the natural key for the link."},"first_name":{"type":"string","example":"string","description":"Given name of the invitee, when supplied."},"invitee_type":{"type":"integer","description":"How the invitee was added: invited directly on the appointment (Standard), or the person who booked it through an appointment schedule (Scheduled).\n\nInteger enum value: 0 - Standard, 1 - Scheduled","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"Invited directly on the appointment.","1":"The person who booked the appointment through an appointment schedule."}},"last_name":{"type":"string","example":"string","description":"Family name of the invitee, when supplied."},"response":{"type":"integer","description":"Response of the invitee to the appointment invitation: NoResponse, Accepted or Rejected.\n\nInteger enum value: 0 - NoResponse, 1 - Accepted, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The invitee has not responded yet.","1":"The invitee accepted the invitation.","2":"The invitee declined the invitation."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["appointment_id","email"]},"updateAppointmentContactInviteesRelationInput":{"description":"Field values to change on an AppointmentContactInviteesRelation record; fields left out keep their values.","properties":{"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment the contact has been invited to."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched contact."},"email":{"type":"string","example":"string","description":"Email address of the invitee. Required and used as the natural key for the link."},"first_name":{"type":"string","example":"string","description":"Given name of the invitee, when supplied."},"invitee_type":{"type":"integer","description":"How the invitee was added: invited directly on the appointment (Standard), or the person who booked it through an appointment schedule (Scheduled).\n\nInteger enum value: 0 - Standard, 1 - Scheduled","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"Invited directly on the appointment.","1":"The person who booked the appointment through an appointment schedule."}},"last_name":{"type":"string","example":"string","description":"Family name of the invitee, when supplied."},"response":{"type":"integer","description":"Response of the invitee to the appointment invitation: NoResponse, Accepted or Rejected.\n\nInteger enum value: 0 - NoResponse, 1 - Accepted, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The invitee has not responded yet.","1":"The invitee accepted the invitation.","2":"The invitee declined the invitation."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAppointmentContactInviteesRelationInput":{"description":"Field values of an AppointmentContactInviteesRelation record to create, or to update when its id is set.","properties":{"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment the contact has been invited to."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched contact."},"email":{"type":"string","example":"string","description":"Email address of the invitee. Required and used as the natural key for the link."},"first_name":{"type":"string","example":"string","description":"Given name of the invitee, when supplied."},"invitee_type":{"type":"integer","description":"How the invitee was added: invited directly on the appointment (Standard), or the person who booked it through an appointment schedule (Scheduled).\n\nInteger enum value: 0 - Standard, 1 - Scheduled","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"Invited directly on the appointment.","1":"The person who booked the appointment through an appointment schedule."}},"last_name":{"type":"string","example":"string","description":"Family name of the invitee, when supplied."},"response":{"type":"integer","description":"Response of the invitee to the appointment invitation: NoResponse, Accepted or Rejected.\n\nInteger enum value: 0 - NoResponse, 1 - Accepted, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The invitee has not responded yet.","1":"The invitee accepted the invitation.","2":"The invitee declined the invitation."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AppointmentReminder":{"description":"Reminder a user has set for an appointment, notifying them a given time before it starts.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment":{"type":"string","format":"uri","description":"Appointment this reminder belongs to.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"owner":{"type":"string","format":"uri","description":"User who set this reminder. Reminders are per-user.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment this reminder belongs to."},"end_date_offset":{"type":"integer","format":"int32","example":1,"description":"Seconds before the appointment start when the reminder should fire."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who set the reminder."},"snooze_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when a snoozed reminder should fire again. Empty when not snoozed."},"status":{"type":"integer","description":"Current state of the reminder: Scheduled to fire at its set time, Snoozed until snooze_date, or Dismissed.\n\nInteger enum value: 0 - Snoozed, 1 - Scheduled, 2 - Dismissed","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The reminder was postponed and fires again at its snooze date.","1":"The reminder fires at its set time.","2":"The reminder was dismissed and does not fire again."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","appointment","owner","appointment_id","end_date_offset","owner_id"]},"createAppointmentReminderInput":{"description":"Field values of a new AppointmentReminder record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment this reminder belongs to."},"end_date_offset":{"type":"integer","format":"int32","example":1,"description":"Seconds before the appointment start when the reminder should fire."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who set the reminder."},"snooze_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when a snoozed reminder should fire again. Empty when not snoozed."},"status":{"type":"integer","description":"Current state of the reminder: Scheduled to fire at its set time, Snoozed until snooze_date, or Dismissed.\n\nInteger enum value: 0 - Snoozed, 1 - Scheduled, 2 - Dismissed","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The reminder was postponed and fires again at its snooze date.","1":"The reminder fires at its set time.","2":"The reminder was dismissed and does not fire again."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["appointment_id","end_date_offset","owner_id"]},"updateAppointmentReminderInput":{"description":"Field values to change on an AppointmentReminder record; fields left out keep their values.","properties":{"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment this reminder belongs to."},"end_date_offset":{"type":"integer","format":"int32","example":1,"description":"Seconds before the appointment start when the reminder should fire."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who set the reminder."},"snooze_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when a snoozed reminder should fire again. Empty when not snoozed."},"status":{"type":"integer","description":"Current state of the reminder: Scheduled to fire at its set time, Snoozed until snooze_date, or Dismissed.\n\nInteger enum value: 0 - Snoozed, 1 - Scheduled, 2 - Dismissed","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The reminder was postponed and fires again at its snooze date.","1":"The reminder fires at its set time.","2":"The reminder was dismissed and does not fire again."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAppointmentReminderInput":{"description":"Field values of an AppointmentReminder record to create, or to update when its id is set.","properties":{"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment this reminder belongs to."},"end_date_offset":{"type":"integer","format":"int32","example":1,"description":"Seconds before the appointment start when the reminder should fire."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who set the reminder."},"snooze_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when a snoozed reminder should fire again. Empty when not snoozed."},"status":{"type":"integer","description":"Current state of the reminder: Scheduled to fire at its set time, Snoozed until snooze_date, or Dismissed.\n\nInteger enum value: 0 - Snoozed, 1 - Scheduled, 2 - Dismissed","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The reminder was postponed and fires again at its snooze date.","1":"The reminder fires at its set time.","2":"The reminder was dismissed and does not fire again."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AppointmentSchedule":{"description":"Online booking link through which people book appointments with a user in the time slots the user has available.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment_owner":{"type":"string","format":"uri","description":"User assigned as the appointment owner when a booking is made through this schedule.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"appointment_type":{"type":"string","format":"uri","description":"Appointment type used when a booking is created.\n\nRelated AppointmentType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AppointmentType' for its fields."},"owner":{"type":"string","format":"uri","description":"Owner of the schedule (typically the team member whose availability is exposed).\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"reply_company_email":{"type":"string","format":"uri","description":"Sender company email used as the From / Reply-To on schedule confirmation emails. Empty falls back to the team space default.\n\nRelated CompanyEmail record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CompanyEmail' for its fields."},"appointment_description":{"type":"string","example":"string","description":"Description applied to appointments booked through this schedule."},"appointment_duration":{"type":"number","format":"double","example":"4.32","description":"Duration of each booked appointment."},"appointment_location":{"type":"string","example":"string","description":"Location applied to appointments booked through this schedule."},"appointment_location_type":{"type":"integer","description":"Where booked appointments take place: the location given in appointment_location (Custom), or a Microsoft Teams (Microsoft) or Zoom (Zoom) online meeting.\n\nInteger enum value: 0 - Custom, 1 - Microsoft, 2 - Zoom","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Location given in appointmentLocation.","1":"Microsoft Teams online meeting.","2":"Zoom online meeting."}},"appointment_owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user receiving the booking."},"appointment_subject":{"type":"string","example":"string","description":"Subject applied to appointments booked through this schedule."},"appointment_subject_uses_schedule_name":{"type":"boolean","example":false,"description":"When true, booked appointments use the schedule_name as their subject instead of appointment_subject."},"appointment_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type used for appointments booked through the schedule."},"availability_tzid":{"type":"string","example":"string","description":"IANA timezone (e.g. \"Europe/Bratislava\") in which availability windows are defined."},"buffer_time_after":{"type":"integer","format":"int32","example":1,"description":"Buffer in seconds kept free after each booked appointment (e.g. 900 = 15 minutes)."},"buffer_time_before":{"type":"integer","format":"int32","example":1,"description":"Buffer in seconds kept free before each booked appointment (e.g. 900 = 15 minutes)."},"confirmation_page_type":{"type":"integer","description":"What is shown to the booker after confirming (e.g. default Coevera page or a custom redirect URL).\n\nInteger enum value: 0 - ConfirmationPage, 1 - ExternalUrl","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The built-in confirmation page is shown.","1":"The booker is redirected to confirmationPageUrl."}},"confirmation_page_url":{"type":"string","example":"string","description":"Custom URL the booker is redirected to after confirming. Used when confirmation_page_type selects a custom redirect."},"is_enabled":{"type":"boolean","example":false,"description":"Master switch for the schedule. Disabled schedules do not accept new bookings."},"minimum_notice_time":{"type":"integer","format":"int32","example":1,"description":"Minimum notice in seconds required before a slot can be booked (e.g. 3600 = one hour)."},"name":{"type":"string","example":"string","description":"Admin-only name for the schedule, used in pickers and lists. Not shown to bookers; use schedule_name for the public-facing name."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the schedule owner."},"planning_day_offset":{"type":"integer","format":"int32","example":1,"description":"With Offset planning, how many days ahead the schedule remains bookable."},"planning_period_from":{"type":"string","format":"date","example":"2019-01-01","description":"With Period planning, first date bookings are accepted for."},"planning_period_to":{"type":"string","format":"date","example":"2019-01-01","description":"With Period planning, last date bookings are accepted for."},"planning_type":{"type":"integer","description":"Time window in which the schedule accepts bookings: any future date (Infinite), up to planning_day_offset days ahead (Offset), or between planning_period_from and planning_period_to (Period).\n\nInteger enum value: 0 - Infinite, 1 - Offset, 2 - Period","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Bookings are accepted for any future date.","1":"Bookings are accepted up to planningDayOffset days ahead.","2":"Bookings are accepted only between planningPeriodFrom and planningPeriodTo."}},"reminder_email_enabled":{"type":"boolean","example":false,"description":"True when a reminder email is sent to invitees ahead of the booked appointment."},"reminder_email_offset":{"type":"integer","format":"int32","example":1,"description":"Time before the appointment when the reminder email is sent. Interpreted using reminder_email_offset_type."},"reminder_email_offset_type":{"type":"integer","description":"Time unit of reminder_email_offset: Minute, Hour, Day or Week.\n\nInteger enum value: 0 - Minute, 1 - Hour, 2 - Day, 3 - Week","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Offset measured in minutes.","1":"Offset measured in hours.","2":"Offset measured in days.","3":"Offset measured in weeks."}},"reply_company_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company email used as the From / Reply-To on schedule confirmation emails. Empty falls back to the team space default."},"schedule_name":{"type":"string","example":"string","description":"Public-facing name of the schedule, shown to bookers on the booking page."},"time_increment":{"type":"integer","format":"int32","example":1,"description":"Step in seconds between offered start times (e.g. 900 means slots at :00, :15, :30, :45)."},"type":{"type":"integer","description":"Kind of meetings booked through the schedule: one-to-one (OneToOne) or group (Group) meetings.\n\nInteger enum value: 0 - OneToOne, 1 - Group","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The booker meets only the schedule owner.","1":"The booker meets the schedule owner together with their team members at the same time."}},"url":{"type":"string","example":"string","description":"Public URL slug of the schedule, used to share the booking page."},"additional_fields_data":{"type":"array","items":{"type":"object","properties":{"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment field the booker fills in; the value is saved on the booked appointment."},"label":{"type":"string","example":"string","description":"Label of the field on the booking page."},"is_required":{"type":"boolean","example":false,"description":"True when the booker must fill in the field."}},"required":["field_id","label","is_required"]},"description":"Custom fields the booker is asked to fill in on the booking page, in display order."},"availability_data":{"type":"object","description":"Weekly availability windows (per weekday) used to compute bookable slots, in the schedule's availability_tzid timezone."},"appointment_invitees_data":{"type":"array","items":{"type":"object","properties":{"entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user or contact; empty for an Email invitee."},"email":{"type":"string","example":"string","description":"Email address of the invitee."},"type":{"type":"integer","description":"Kind of invitee: a Coevera user (Client), a contact (Contact) or an external email address (Email). Only Client invitees are added to booked appointments.\n\nInteger enum value: 1 - Client, 2 - Contact, 3 - Email","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Coevera user; entityId identifies the user.","2":"Contact; entityId identifies the contact.","3":"External email address given in email."}}},"required":["email","type"]},"description":"Default invitees added to appointments booked through this schedule (Coevera users or external email addresses)."}},"required":["is_delete_protected","id","appointment_owner","appointment_type","owner","appointment_description","appointment_location","appointment_owner_id","appointment_subject","appointment_subject_uses_schedule_name","appointment_type_id","buffer_time_after","buffer_time_before","is_enabled","minimum_notice_time","name","owner_id","planning_day_offset","reminder_email_enabled","reminder_email_offset","schedule_name","time_increment","url","additional_fields_data","availability_data","appointment_invitees_data"]},"createAppointmentScheduleInput":{"description":"Field values of a new AppointmentSchedule record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment_description":{"type":"string","example":"string","description":"Description applied to appointments booked through this schedule."},"appointment_duration":{"type":"number","format":"double","example":"4.32","description":"Duration of each booked appointment."},"appointment_location":{"type":"string","example":"string","description":"Location applied to appointments booked through this schedule."},"appointment_location_type":{"type":"integer","description":"Where booked appointments take place: the location given in appointment_location (Custom), or a Microsoft Teams (Microsoft) or Zoom (Zoom) online meeting.\n\nInteger enum value: 0 - Custom, 1 - Microsoft, 2 - Zoom","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Location given in appointmentLocation.","1":"Microsoft Teams online meeting.","2":"Zoom online meeting."}},"appointment_owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user receiving the booking."},"appointment_subject":{"type":"string","example":"string","description":"Subject applied to appointments booked through this schedule."},"appointment_subject_uses_schedule_name":{"type":"boolean","example":false,"description":"When true, booked appointments use the schedule_name as their subject instead of appointment_subject."},"appointment_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type used for appointments booked through the schedule."},"availability_tzid":{"type":"string","example":"string","description":"IANA timezone (e.g. \"Europe/Bratislava\") in which availability windows are defined."},"buffer_time_after":{"type":"integer","format":"int32","example":1,"description":"Buffer in seconds kept free after each booked appointment (e.g. 900 = 15 minutes)."},"buffer_time_before":{"type":"integer","format":"int32","example":1,"description":"Buffer in seconds kept free before each booked appointment (e.g. 900 = 15 minutes)."},"confirmation_page_type":{"type":"integer","description":"What is shown to the booker after confirming (e.g. default Coevera page or a custom redirect URL).\n\nInteger enum value: 0 - ConfirmationPage, 1 - ExternalUrl","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The built-in confirmation page is shown.","1":"The booker is redirected to confirmationPageUrl."}},"confirmation_page_url":{"type":"string","example":"string","description":"Custom URL the booker is redirected to after confirming. Used when confirmation_page_type selects a custom redirect."},"is_enabled":{"type":"boolean","example":false,"description":"Master switch for the schedule. Disabled schedules do not accept new bookings."},"minimum_notice_time":{"type":"integer","format":"int32","example":1,"description":"Minimum notice in seconds required before a slot can be booked (e.g. 3600 = one hour)."},"name":{"type":"string","example":"string","description":"Admin-only name for the schedule, used in pickers and lists. Not shown to bookers; use schedule_name for the public-facing name."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the schedule owner."},"planning_day_offset":{"type":"integer","format":"int32","example":1,"description":"With Offset planning, how many days ahead the schedule remains bookable."},"planning_period_from":{"type":"string","format":"date","example":"2019-01-01","description":"With Period planning, first date bookings are accepted for."},"planning_period_to":{"type":"string","format":"date","example":"2019-01-01","description":"With Period planning, last date bookings are accepted for."},"planning_type":{"type":"integer","description":"Time window in which the schedule accepts bookings: any future date (Infinite), up to planning_day_offset days ahead (Offset), or between planning_period_from and planning_period_to (Period).\n\nInteger enum value: 0 - Infinite, 1 - Offset, 2 - Period","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Bookings are accepted for any future date.","1":"Bookings are accepted up to planningDayOffset days ahead.","2":"Bookings are accepted only between planningPeriodFrom and planningPeriodTo."}},"reminder_email_enabled":{"type":"boolean","example":false,"description":"True when a reminder email is sent to invitees ahead of the booked appointment."},"reminder_email_offset":{"type":"integer","format":"int32","example":1,"description":"Time before the appointment when the reminder email is sent. Interpreted using reminder_email_offset_type."},"reminder_email_offset_type":{"type":"integer","description":"Time unit of reminder_email_offset: Minute, Hour, Day or Week.\n\nInteger enum value: 0 - Minute, 1 - Hour, 2 - Day, 3 - Week","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Offset measured in minutes.","1":"Offset measured in hours.","2":"Offset measured in days.","3":"Offset measured in weeks."}},"reply_company_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company email used as the From / Reply-To on schedule confirmation emails. Empty falls back to the team space default."},"schedule_name":{"type":"string","example":"string","description":"Public-facing name of the schedule, shown to bookers on the booking page."},"time_increment":{"type":"integer","format":"int32","example":1,"description":"Step in seconds between offered start times (e.g. 900 means slots at :00, :15, :30, :45)."},"type":{"type":"integer","description":"Kind of meetings booked through the schedule: one-to-one (OneToOne) or group (Group) meetings.\n\nInteger enum value: 0 - OneToOne, 1 - Group","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The booker meets only the schedule owner.","1":"The booker meets the schedule owner together with their team members at the same time."}},"url":{"type":"string","example":"string","description":"Public URL slug of the schedule, used to share the booking page."},"additional_fields_data":{"type":"array","items":{"type":"object","properties":{"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment field the booker fills in; the value is saved on the booked appointment."},"label":{"type":"string","example":"string","description":"Label of the field on the booking page."},"is_required":{"type":"boolean","example":false,"description":"True when the booker must fill in the field."}},"required":["field_id","label","is_required"]},"description":"Custom fields the booker is asked to fill in on the booking page, in display order."},"availability_data":{"type":"object","description":"Weekly availability windows (per weekday) used to compute bookable slots, in the schedule's availability_tzid timezone."},"appointment_invitees_data":{"type":"array","items":{"type":"object","properties":{"entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user or contact; empty for an Email invitee."},"email":{"type":"string","example":"string","description":"Email address of the invitee."},"type":{"type":"integer","description":"Kind of invitee: a Coevera user (Client), a contact (Contact) or an external email address (Email). Only Client invitees are added to booked appointments.\n\nInteger enum value: 1 - Client, 2 - Contact, 3 - Email","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Coevera user; entityId identifies the user.","2":"Contact; entityId identifies the contact.","3":"External email address given in email."}}},"required":["email","type"]},"description":"Default invitees added to appointments booked through this schedule (Coevera users or external email addresses)."}},"required":["appointment_description","appointment_location","appointment_owner_id","appointment_subject","appointment_subject_uses_schedule_name","appointment_type_id","buffer_time_after","buffer_time_before","is_enabled","minimum_notice_time","name","owner_id","planning_day_offset","reminder_email_enabled","reminder_email_offset","schedule_name","time_increment","url","additional_fields_data","availability_data","appointment_invitees_data"]},"updateAppointmentScheduleInput":{"description":"Field values to change on an AppointmentSchedule record; fields left out keep their values.","properties":{"appointment_description":{"type":"string","example":"string","description":"Description applied to appointments booked through this schedule."},"appointment_duration":{"type":"number","format":"double","example":"4.32","description":"Duration of each booked appointment."},"appointment_location":{"type":"string","example":"string","description":"Location applied to appointments booked through this schedule."},"appointment_location_type":{"type":"integer","description":"Where booked appointments take place: the location given in appointment_location (Custom), or a Microsoft Teams (Microsoft) or Zoom (Zoom) online meeting.\n\nInteger enum value: 0 - Custom, 1 - Microsoft, 2 - Zoom","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Location given in appointmentLocation.","1":"Microsoft Teams online meeting.","2":"Zoom online meeting."}},"appointment_owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user receiving the booking."},"appointment_subject":{"type":"string","example":"string","description":"Subject applied to appointments booked through this schedule."},"appointment_subject_uses_schedule_name":{"type":"boolean","example":false,"description":"When true, booked appointments use the schedule_name as their subject instead of appointment_subject."},"appointment_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type used for appointments booked through the schedule."},"availability_tzid":{"type":"string","example":"string","description":"IANA timezone (e.g. \"Europe/Bratislava\") in which availability windows are defined."},"buffer_time_after":{"type":"integer","format":"int32","example":1,"description":"Buffer in seconds kept free after each booked appointment (e.g. 900 = 15 minutes)."},"buffer_time_before":{"type":"integer","format":"int32","example":1,"description":"Buffer in seconds kept free before each booked appointment (e.g. 900 = 15 minutes)."},"confirmation_page_type":{"type":"integer","description":"What is shown to the booker after confirming (e.g. default Coevera page or a custom redirect URL).\n\nInteger enum value: 0 - ConfirmationPage, 1 - ExternalUrl","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The built-in confirmation page is shown.","1":"The booker is redirected to confirmationPageUrl."}},"confirmation_page_url":{"type":"string","example":"string","description":"Custom URL the booker is redirected to after confirming. Used when confirmation_page_type selects a custom redirect."},"is_enabled":{"type":"boolean","example":false,"description":"Master switch for the schedule. Disabled schedules do not accept new bookings."},"minimum_notice_time":{"type":"integer","format":"int32","example":1,"description":"Minimum notice in seconds required before a slot can be booked (e.g. 3600 = one hour)."},"name":{"type":"string","example":"string","description":"Admin-only name for the schedule, used in pickers and lists. Not shown to bookers; use schedule_name for the public-facing name."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the schedule owner."},"planning_day_offset":{"type":"integer","format":"int32","example":1,"description":"With Offset planning, how many days ahead the schedule remains bookable."},"planning_period_from":{"type":"string","format":"date","example":"2019-01-01","description":"With Period planning, first date bookings are accepted for."},"planning_period_to":{"type":"string","format":"date","example":"2019-01-01","description":"With Period planning, last date bookings are accepted for."},"planning_type":{"type":"integer","description":"Time window in which the schedule accepts bookings: any future date (Infinite), up to planning_day_offset days ahead (Offset), or between planning_period_from and planning_period_to (Period).\n\nInteger enum value: 0 - Infinite, 1 - Offset, 2 - Period","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Bookings are accepted for any future date.","1":"Bookings are accepted up to planningDayOffset days ahead.","2":"Bookings are accepted only between planningPeriodFrom and planningPeriodTo."}},"reminder_email_enabled":{"type":"boolean","example":false,"description":"True when a reminder email is sent to invitees ahead of the booked appointment."},"reminder_email_offset":{"type":"integer","format":"int32","example":1,"description":"Time before the appointment when the reminder email is sent. Interpreted using reminder_email_offset_type."},"reminder_email_offset_type":{"type":"integer","description":"Time unit of reminder_email_offset: Minute, Hour, Day or Week.\n\nInteger enum value: 0 - Minute, 1 - Hour, 2 - Day, 3 - Week","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Offset measured in minutes.","1":"Offset measured in hours.","2":"Offset measured in days.","3":"Offset measured in weeks."}},"reply_company_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company email used as the From / Reply-To on schedule confirmation emails. Empty falls back to the team space default."},"schedule_name":{"type":"string","example":"string","description":"Public-facing name of the schedule, shown to bookers on the booking page."},"time_increment":{"type":"integer","format":"int32","example":1,"description":"Step in seconds between offered start times (e.g. 900 means slots at :00, :15, :30, :45)."},"type":{"type":"integer","description":"Kind of meetings booked through the schedule: one-to-one (OneToOne) or group (Group) meetings.\n\nInteger enum value: 0 - OneToOne, 1 - Group","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The booker meets only the schedule owner.","1":"The booker meets the schedule owner together with their team members at the same time."}},"url":{"type":"string","example":"string","description":"Public URL slug of the schedule, used to share the booking page."},"additional_fields_data":{"type":"array","items":{"type":"object","properties":{"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment field the booker fills in; the value is saved on the booked appointment."},"label":{"type":"string","example":"string","description":"Label of the field on the booking page."},"is_required":{"type":"boolean","example":false,"description":"True when the booker must fill in the field."}},"required":["field_id","label","is_required"]},"description":"Custom fields the booker is asked to fill in on the booking page, in display order."},"availability_data":{"type":"object","description":"Weekly availability windows (per weekday) used to compute bookable slots, in the schedule's availability_tzid timezone."},"appointment_invitees_data":{"type":"array","items":{"type":"object","properties":{"entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user or contact; empty for an Email invitee."},"email":{"type":"string","example":"string","description":"Email address of the invitee."},"type":{"type":"integer","description":"Kind of invitee: a Coevera user (Client), a contact (Contact) or an external email address (Email). Only Client invitees are added to booked appointments.\n\nInteger enum value: 1 - Client, 2 - Contact, 3 - Email","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Coevera user; entityId identifies the user.","2":"Contact; entityId identifies the contact.","3":"External email address given in email."}}},"required":["email","type"]},"description":"Default invitees added to appointments booked through this schedule (Coevera users or external email addresses)."}}},"batchAppointmentScheduleInput":{"description":"Field values of an AppointmentSchedule record to create, or to update when its id is set.","properties":{"appointment_description":{"type":"string","example":"string","description":"Description applied to appointments booked through this schedule."},"appointment_duration":{"type":"number","format":"double","example":"4.32","description":"Duration of each booked appointment."},"appointment_location":{"type":"string","example":"string","description":"Location applied to appointments booked through this schedule."},"appointment_location_type":{"type":"integer","description":"Where booked appointments take place: the location given in appointment_location (Custom), or a Microsoft Teams (Microsoft) or Zoom (Zoom) online meeting.\n\nInteger enum value: 0 - Custom, 1 - Microsoft, 2 - Zoom","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Location given in appointmentLocation.","1":"Microsoft Teams online meeting.","2":"Zoom online meeting."}},"appointment_owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user receiving the booking."},"appointment_subject":{"type":"string","example":"string","description":"Subject applied to appointments booked through this schedule."},"appointment_subject_uses_schedule_name":{"type":"boolean","example":false,"description":"When true, booked appointments use the schedule_name as their subject instead of appointment_subject."},"appointment_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type used for appointments booked through the schedule."},"availability_tzid":{"type":"string","example":"string","description":"IANA timezone (e.g. \"Europe/Bratislava\") in which availability windows are defined."},"buffer_time_after":{"type":"integer","format":"int32","example":1,"description":"Buffer in seconds kept free after each booked appointment (e.g. 900 = 15 minutes)."},"buffer_time_before":{"type":"integer","format":"int32","example":1,"description":"Buffer in seconds kept free before each booked appointment (e.g. 900 = 15 minutes)."},"confirmation_page_type":{"type":"integer","description":"What is shown to the booker after confirming (e.g. default Coevera page or a custom redirect URL).\n\nInteger enum value: 0 - ConfirmationPage, 1 - ExternalUrl","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The built-in confirmation page is shown.","1":"The booker is redirected to confirmationPageUrl."}},"confirmation_page_url":{"type":"string","example":"string","description":"Custom URL the booker is redirected to after confirming. Used when confirmation_page_type selects a custom redirect."},"is_enabled":{"type":"boolean","example":false,"description":"Master switch for the schedule. Disabled schedules do not accept new bookings."},"minimum_notice_time":{"type":"integer","format":"int32","example":1,"description":"Minimum notice in seconds required before a slot can be booked (e.g. 3600 = one hour)."},"name":{"type":"string","example":"string","description":"Admin-only name for the schedule, used in pickers and lists. Not shown to bookers; use schedule_name for the public-facing name."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the schedule owner."},"planning_day_offset":{"type":"integer","format":"int32","example":1,"description":"With Offset planning, how many days ahead the schedule remains bookable."},"planning_period_from":{"type":"string","format":"date","example":"2019-01-01","description":"With Period planning, first date bookings are accepted for."},"planning_period_to":{"type":"string","format":"date","example":"2019-01-01","description":"With Period planning, last date bookings are accepted for."},"planning_type":{"type":"integer","description":"Time window in which the schedule accepts bookings: any future date (Infinite), up to planning_day_offset days ahead (Offset), or between planning_period_from and planning_period_to (Period).\n\nInteger enum value: 0 - Infinite, 1 - Offset, 2 - Period","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Bookings are accepted for any future date.","1":"Bookings are accepted up to planningDayOffset days ahead.","2":"Bookings are accepted only between planningPeriodFrom and planningPeriodTo."}},"reminder_email_enabled":{"type":"boolean","example":false,"description":"True when a reminder email is sent to invitees ahead of the booked appointment."},"reminder_email_offset":{"type":"integer","format":"int32","example":1,"description":"Time before the appointment when the reminder email is sent. Interpreted using reminder_email_offset_type."},"reminder_email_offset_type":{"type":"integer","description":"Time unit of reminder_email_offset: Minute, Hour, Day or Week.\n\nInteger enum value: 0 - Minute, 1 - Hour, 2 - Day, 3 - Week","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Offset measured in minutes.","1":"Offset measured in hours.","2":"Offset measured in days.","3":"Offset measured in weeks."}},"reply_company_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company email used as the From / Reply-To on schedule confirmation emails. Empty falls back to the team space default."},"schedule_name":{"type":"string","example":"string","description":"Public-facing name of the schedule, shown to bookers on the booking page."},"time_increment":{"type":"integer","format":"int32","example":1,"description":"Step in seconds between offered start times (e.g. 900 means slots at :00, :15, :30, :45)."},"type":{"type":"integer","description":"Kind of meetings booked through the schedule: one-to-one (OneToOne) or group (Group) meetings.\n\nInteger enum value: 0 - OneToOne, 1 - Group","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The booker meets only the schedule owner.","1":"The booker meets the schedule owner together with their team members at the same time."}},"url":{"type":"string","example":"string","description":"Public URL slug of the schedule, used to share the booking page."},"additional_fields_data":{"type":"array","items":{"type":"object","properties":{"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment field the booker fills in; the value is saved on the booked appointment."},"label":{"type":"string","example":"string","description":"Label of the field on the booking page."},"is_required":{"type":"boolean","example":false,"description":"True when the booker must fill in the field."}},"required":["field_id","label","is_required"]},"description":"Custom fields the booker is asked to fill in on the booking page, in display order."},"availability_data":{"type":"object","description":"Weekly availability windows (per weekday) used to compute bookable slots, in the schedule's availability_tzid timezone."},"appointment_invitees_data":{"type":"array","items":{"type":"object","properties":{"entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user or contact; empty for an Email invitee."},"email":{"type":"string","example":"string","description":"Email address of the invitee."},"type":{"type":"integer","description":"Kind of invitee: a Coevera user (Client), a contact (Contact) or an external email address (Email). Only Client invitees are added to booked appointments.\n\nInteger enum value: 1 - Client, 2 - Contact, 3 - Email","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Coevera user; entityId identifies the user.","2":"Contact; entityId identifies the contact.","3":"External email address given in email."}}},"required":["email","type"]},"description":"Default invitees added to appointments booked through this schedule (Coevera users or external email addresses)."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"AppointmentType":{"description":"Configurable category of appointments, such as a meeting or a call, that defines their form layout and icon.","properties":{"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing appointments of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"icon":{"type":"integer","description":"Icon used to display appointments of this type in the UI.\n\nInteger enum value: 0 - GeneralIcon, 1 - Task, 2 - Appointment, 3 - Call, 4 - Mail, 5 - Message, 6 - TicketingIntegration, 7 - DocumentManagement, 8 - EventManagement, 9 - AccountingSystem, 10 - MarketingCommunicationSystems, 11 - OrderProcessing, 12 - WebServices, 13 - ReturnMerchandiseAuthorizationSystems, 14 - SalesAutomatization, 15 - SmsMessaging, 16 - ErpSystems, 17 - DataAnalytics, 18 - Warehouses, 19 - ContactManagement, 20 - ContentManagementSystems, 21 - InventorySystems, 22 - Workflow, 23 - AssetManagementSystem","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],"x-enumDescriptions":{"0":"Generic activity icon not tied to a specific kind of activity.","1":"Icon depicting a task; the default for task types.","2":"Icon depicting an appointment; the default for appointment types.","3":"Icon depicting a phone call.","4":"Icon depicting an email.","5":"Icon depicting a message.","6":"Icon depicting a ticketing system integration.","7":"Icon depicting document management.","8":"Icon depicting event management.","9":"Icon depicting an accounting system.","10":"Icon depicting a marketing communication system.","11":"Icon depicting order processing.","12":"Icon depicting web services.","13":"Icon depicting a return merchandise authorization (RMA) system.","14":"Icon depicting sales automation.","15":"Icon depicting SMS messaging.","16":"Icon depicting an ERP system.","17":"Icon depicting data analytics.","18":"Icon depicting a warehouse.","19":"Icon depicting contact management.","20":"Icon depicting a content management system.","21":"Icon depicting an inventory system.","22":"Icon depicting a workflow.","23":"Icon depicting an asset management system."}},"is_readonly":{"type":"boolean","example":false,"description":"True when the appointment type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"form_edit_api":{"type":"object","description":"Typed, read-only view of a form layout of this type: form_edit_api mirrors the edit form (form_edit), form_lost_api the form shown when archiving as lost (form_lost)."},"can_change_readonly":{"type":"boolean","example":false,"description":"False for types whose read-only setting is fixed, such as the recurrent appointment type; true otherwise."}},"required":["id","is_readonly","name","has_draft","is_delete_protected","form_edit_api"]},"createAppointmentTypeInput":{"description":"Field values of a new AppointmentType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing appointments of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"icon":{"type":"integer","description":"Icon used to display appointments of this type in the UI.\n\nInteger enum value: 0 - GeneralIcon, 1 - Task, 2 - Appointment, 3 - Call, 4 - Mail, 5 - Message, 6 - TicketingIntegration, 7 - DocumentManagement, 8 - EventManagement, 9 - AccountingSystem, 10 - MarketingCommunicationSystems, 11 - OrderProcessing, 12 - WebServices, 13 - ReturnMerchandiseAuthorizationSystems, 14 - SalesAutomatization, 15 - SmsMessaging, 16 - ErpSystems, 17 - DataAnalytics, 18 - Warehouses, 19 - ContactManagement, 20 - ContentManagementSystems, 21 - InventorySystems, 22 - Workflow, 23 - AssetManagementSystem","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],"x-enumDescriptions":{"0":"Generic activity icon not tied to a specific kind of activity.","1":"Icon depicting a task; the default for task types.","2":"Icon depicting an appointment; the default for appointment types.","3":"Icon depicting a phone call.","4":"Icon depicting an email.","5":"Icon depicting a message.","6":"Icon depicting a ticketing system integration.","7":"Icon depicting document management.","8":"Icon depicting event management.","9":"Icon depicting an accounting system.","10":"Icon depicting a marketing communication system.","11":"Icon depicting order processing.","12":"Icon depicting web services.","13":"Icon depicting a return merchandise authorization (RMA) system.","14":"Icon depicting sales automation.","15":"Icon depicting SMS messaging.","16":"Icon depicting an ERP system.","17":"Icon depicting data analytics.","18":"Icon depicting a warehouse.","19":"Icon depicting contact management.","20":"Icon depicting a content management system.","21":"Icon depicting an inventory system.","22":"Icon depicting a workflow.","23":"Icon depicting an asset management system."}},"is_readonly":{"type":"boolean","example":false,"description":"True when the appointment type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_readonly","name"]},"updateAppointmentTypeInput":{"description":"Field values to change on an AppointmentType record; fields left out keep their values.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing appointments of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"icon":{"type":"integer","description":"Icon used to display appointments of this type in the UI.\n\nInteger enum value: 0 - GeneralIcon, 1 - Task, 2 - Appointment, 3 - Call, 4 - Mail, 5 - Message, 6 - TicketingIntegration, 7 - DocumentManagement, 8 - EventManagement, 9 - AccountingSystem, 10 - MarketingCommunicationSystems, 11 - OrderProcessing, 12 - WebServices, 13 - ReturnMerchandiseAuthorizationSystems, 14 - SalesAutomatization, 15 - SmsMessaging, 16 - ErpSystems, 17 - DataAnalytics, 18 - Warehouses, 19 - ContactManagement, 20 - ContentManagementSystems, 21 - InventorySystems, 22 - Workflow, 23 - AssetManagementSystem","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],"x-enumDescriptions":{"0":"Generic activity icon not tied to a specific kind of activity.","1":"Icon depicting a task; the default for task types.","2":"Icon depicting an appointment; the default for appointment types.","3":"Icon depicting a phone call.","4":"Icon depicting an email.","5":"Icon depicting a message.","6":"Icon depicting a ticketing system integration.","7":"Icon depicting document management.","8":"Icon depicting event management.","9":"Icon depicting an accounting system.","10":"Icon depicting a marketing communication system.","11":"Icon depicting order processing.","12":"Icon depicting web services.","13":"Icon depicting a return merchandise authorization (RMA) system.","14":"Icon depicting sales automation.","15":"Icon depicting SMS messaging.","16":"Icon depicting an ERP system.","17":"Icon depicting data analytics.","18":"Icon depicting a warehouse.","19":"Icon depicting contact management.","20":"Icon depicting a content management system.","21":"Icon depicting an inventory system.","22":"Icon depicting a workflow.","23":"Icon depicting an asset management system."}},"is_readonly":{"type":"boolean","example":false,"description":"True when the appointment type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchAppointmentTypeInput":{"description":"Field values of an AppointmentType record to create, or to update when its id is set.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing appointments of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"icon":{"type":"integer","description":"Icon used to display appointments of this type in the UI.\n\nInteger enum value: 0 - GeneralIcon, 1 - Task, 2 - Appointment, 3 - Call, 4 - Mail, 5 - Message, 6 - TicketingIntegration, 7 - DocumentManagement, 8 - EventManagement, 9 - AccountingSystem, 10 - MarketingCommunicationSystems, 11 - OrderProcessing, 12 - WebServices, 13 - ReturnMerchandiseAuthorizationSystems, 14 - SalesAutomatization, 15 - SmsMessaging, 16 - ErpSystems, 17 - DataAnalytics, 18 - Warehouses, 19 - ContactManagement, 20 - ContentManagementSystems, 21 - InventorySystems, 22 - Workflow, 23 - AssetManagementSystem","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],"x-enumDescriptions":{"0":"Generic activity icon not tied to a specific kind of activity.","1":"Icon depicting a task; the default for task types.","2":"Icon depicting an appointment; the default for appointment types.","3":"Icon depicting a phone call.","4":"Icon depicting an email.","5":"Icon depicting a message.","6":"Icon depicting a ticketing system integration.","7":"Icon depicting document management.","8":"Icon depicting event management.","9":"Icon depicting an accounting system.","10":"Icon depicting a marketing communication system.","11":"Icon depicting order processing.","12":"Icon depicting web services.","13":"Icon depicting a return merchandise authorization (RMA) system.","14":"Icon depicting sales automation.","15":"Icon depicting SMS messaging.","16":"Icon depicting an ERP system.","17":"Icon depicting data analytics.","18":"Icon depicting a warehouse.","19":"Icon depicting contact management.","20":"Icon depicting a content management system.","21":"Icon depicting an inventory system.","22":"Icon depicting a workflow.","23":"Icon depicting an asset management system."}},"is_readonly":{"type":"boolean","example":false,"description":"True when the appointment type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Approval":{"description":"Approval request that an approval process raised for a record, such as a quote or an opportunity, waiting for the decision of its approvers.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account the approval is requested on, when the trigger record is an Account.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"actor":{"type":"string","format":"uri","description":"User who triggered the approval, or empty when triggered automatically.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"application":{"type":"string","format":"uri","description":"Application context the approval was triggered in.\n\nRelated Application record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Application' for its fields."},"approval_process":{"type":"string","format":"uri","description":"Approval process this approval was raised from.\n\nRelated ApprovalProcess record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ApprovalProcess' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact the approval is requested on, when the trigger record is a Contact.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead the approval is requested on. Set when lead_oppty_id resolves to a Lead.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity the approval is requested on. Set when lead_oppty_id resolves to an Opportunity.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote the approval is requested on, when the trigger record is a Quote.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the triggering user."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application (e.g. browser, automation, third-party integration) the approval was triggered in."},"approval_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the approval process this approval was raised from."},"approval_status":{"type":"integer","description":"Decision state of the approval: Pending while waiting for the approvers, then Approved or Rejected. end_time is set once the decision is made.\n\nInteger enum value: 0 - Pending, 1 - Approved, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Waiting for the approvers' decision.","1":"The record was approved.","2":"The record was rejected."}},"comment":{"type":"string","example":"string","description":"Comment the requester attached when raising the approval."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"end_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the approval reached a final status (Approved/Rejected/Cancelled). Empty while the approval is still pending."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"settings":{"type":"object","description":"Snapshot of the approval process schema at the time the approval was raised. Frozen so subsequent changes to the parent approval process do not affect this run."},"status":{"type":"integer","description":"Result of the approval process run: the most severe status among its activity log lines, Error when a step of the run failed. The decision itself is in approval_status.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"approvers":{"type":"array","items":{"type":"string","format":"uri","description":"Related ApprovalApprover record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ApprovalApprover' for its fields."},"description":"Users who must respond to the approval, with their individual responses."},"lines":{"type":"array","items":{"type":"string","format":"uri","description":"Related ApprovalProcessActivityLogLine record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ApprovalProcessActivityLogLine' for its fields."},"description":"Activity log lines describing the steps taken on this approval (visible only)."},"start_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the approval was raised (alias of created)."}},"required":["is_delete_protected","id","application","approval_process","application_id","approval_process_id","settings"]},"createApprovalInput":{"description":"Field values of a new Approval record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the triggering user."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application (e.g. browser, automation, third-party integration) the approval was triggered in."},"approval_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the approval process this approval was raised from."},"approval_status":{"type":"integer","description":"Decision state of the approval: Pending while waiting for the approvers, then Approved or Rejected. end_time is set once the decision is made.\n\nInteger enum value: 0 - Pending, 1 - Approved, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Waiting for the approvers' decision.","1":"The record was approved.","2":"The record was rejected."}},"comment":{"type":"string","example":"string","description":"Comment the requester attached when raising the approval."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"status":{"type":"integer","description":"Result of the approval process run: the most severe status among its activity log lines, Error when a step of the run failed. The decision itself is in approval_status.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"approvers":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ApprovalApprover record."}},"description":"Related ApprovalApprover record; see 'createApprovalApproverInput' for its fields."},"description":"Users who must respond to the approval, with their individual responses."}},"required":["application_id","approval_process_id"]},"updateApprovalInput":{"description":"Field values to change on an Approval record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the triggering user."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application (e.g. browser, automation, third-party integration) the approval was triggered in."},"approval_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the approval process this approval was raised from."},"approval_status":{"type":"integer","description":"Decision state of the approval: Pending while waiting for the approvers, then Approved or Rejected. end_time is set once the decision is made.\n\nInteger enum value: 0 - Pending, 1 - Approved, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Waiting for the approvers' decision.","1":"The record was approved.","2":"The record was rejected."}},"comment":{"type":"string","example":"string","description":"Comment the requester attached when raising the approval."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"status":{"type":"integer","description":"Result of the approval process run: the most severe status among its activity log lines, Error when a step of the run failed. The decision itself is in approval_status.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"approvers":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ApprovalApprover record."}},"description":"Related ApprovalApprover record; see 'updateApprovalApproverInput' for its fields."},"description":"Users who must respond to the approval, with their individual responses."}}},"batchApprovalInput":{"description":"Field values of an Approval record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the triggering user."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application (e.g. browser, automation, third-party integration) the approval was triggered in."},"approval_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the approval process this approval was raised from."},"approval_status":{"type":"integer","description":"Decision state of the approval: Pending while waiting for the approvers, then Approved or Rejected. end_time is set once the decision is made.\n\nInteger enum value: 0 - Pending, 1 - Approved, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Waiting for the approvers' decision.","1":"The record was approved.","2":"The record was rejected."}},"comment":{"type":"string","example":"string","description":"Comment the requester attached when raising the approval."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"status":{"type":"integer","description":"Result of the approval process run: the most severe status among its activity log lines, Error when a step of the run failed. The decision itself is in approval_status.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"approvers":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ApprovalApprover record."}},"description":"Related ApprovalApprover record; see 'updateApprovalApproverInput' for its fields."},"description":"Users who must respond to the approval, with their individual responses."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ApprovalApprover":{"description":"User asked to decide an approval request, with their response and comment.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"approval":{"type":"string","format":"uri","description":"Approval this approver is assigned to.\n\nRelated Approval record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Approval' for its fields."},"client":{"type":"string","format":"uri","description":"User responsible for approving (or rejecting) the request.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"approval_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the approval this approver is assigned to."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assigned user."},"comment":{"type":"string","example":"string","description":"Comment the user attached when responding to the approval."},"status":{"type":"integer","description":"Response of this approver to the approval request: Pending until the user approves or rejects it.\n\nInteger enum value: 0 - Pending, 1 - Approved, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Waiting for the approvers' decision.","1":"The record was approved.","2":"The record was rejected."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","approval","client","approval_id","client_id"]},"createApprovalApproverInput":{"description":"Field values of a new ApprovalApprover record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"approval_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the approval this approver is assigned to."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assigned user."},"comment":{"type":"string","example":"string","description":"Comment the user attached when responding to the approval."},"status":{"type":"integer","description":"Response of this approver to the approval request: Pending until the user approves or rejects it.\n\nInteger enum value: 0 - Pending, 1 - Approved, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Waiting for the approvers' decision.","1":"The record was approved.","2":"The record was rejected."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["approval_id","client_id"]},"updateApprovalApproverInput":{"description":"Field values to change on an ApprovalApprover record; fields left out keep their values.","properties":{"approval_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the approval this approver is assigned to."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assigned user."},"comment":{"type":"string","example":"string","description":"Comment the user attached when responding to the approval."},"status":{"type":"integer","description":"Response of this approver to the approval request: Pending until the user approves or rejects it.\n\nInteger enum value: 0 - Pending, 1 - Approved, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Waiting for the approvers' decision.","1":"The record was approved.","2":"The record was rejected."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchApprovalApproverInput":{"description":"Field values of an ApprovalApprover record to create, or to update when its id is set.","properties":{"approval_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the approval this approver is assigned to."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assigned user."},"comment":{"type":"string","example":"string","description":"Comment the user attached when responding to the approval."},"status":{"type":"integer","description":"Response of this approver to the approval request: Pending until the user approves or rejects it.\n\nInteger enum value: 0 - Pending, 1 - Approved, 2 - Rejected","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Waiting for the approvers' decision.","1":"The record was approved.","2":"The record was rejected."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ApprovalProcess":{"description":"Approval rule that raises approval requests for records of an entity when its trigger conditions are met, and defines who approves them.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User who owns the approval process.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the approval process."},"entity_type":{"type":"integer","description":"Entity whose records the approval process is raised for, taken from the trigger in settings. Read-only.\n\nInteger enum value: 1 - Lead, 2 - Account, 3 - Contact, 4 - Opportunity, 5 - Task, 6 - Appointment, 7 - OpptyProductRelation, 8 - Project, 9 - Quote, 10 - OnlineForm, 11 - CustomEntity, 12 - Product","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"readOnly":true,"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","3":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","5":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","6":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","7":"Product line of an opportunity.","8":"Project delivered for an account or run internally, with its objectives, activities and progress.","9":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","10":"Submission (response) of an online form, with the answers and the records it created or updated.","11":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","12":"Product or service in the catalog that can be added as a line item to opportunities and quotes."}},"is_enabled":{"type":"boolean","example":false,"description":"When true, the approval process actively raises approvals on matching record events; when false, the process is paused."},"last_schema_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to settings."},"last_status_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to is_enabled."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"priority":{"type":"integer","format":"int32","example":1,"description":"Position of this process among approval processes for the same record-trigger entity type; lower values are evaluated first. Read-only; managed via update_priority. Null for manual-trigger approval processes."},"settings":{"type":"object","description":"Approval process schema as a JSON object conforming to the ApprovalProcessSchema type — trigger, filter, approver settings, and approve/reject nodes. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/a/#ApprovalProcessSchema This payload conforms to the `ApprovalProcessSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ApprovalProcessSchema.json","description":"ApprovalProcessSchema JSON Schema"}},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Files attached to the approval process (e.g. process documentation)."},"activity_logs":{"type":"array","items":{"type":"string","format":"uri","description":"Related Approval record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Approval' for its fields."},"description":"Approvals (one per process run) raised by this approval process."}},"required":["is_delete_protected","id","owner","is_enabled","name","owner_id"]},"createApprovalProcessInput":{"description":"Field values of a new ApprovalProcess record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the approval process."},"is_enabled":{"type":"boolean","example":false,"description":"When true, the approval process actively raises approvals on matching record events; when false, the process is paused."},"last_schema_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to settings."},"last_status_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to is_enabled."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Approval process schema as a JSON object conforming to the ApprovalProcessSchema type — trigger, filter, approver settings, and approve/reject nodes. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/a/#ApprovalProcessSchema This payload conforms to the `ApprovalProcessSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ApprovalProcessSchema.json","description":"ApprovalProcessSchema JSON Schema"}},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Files attached to the approval process (e.g. process documentation)."}},"required":["is_enabled","name","owner_id"]},"updateApprovalProcessInput":{"description":"Field values to change on an ApprovalProcess record; fields left out keep their values.","properties":{"description":{"type":"string","example":"string","description":"Free-text description shown alongside the approval process."},"is_enabled":{"type":"boolean","example":false,"description":"When true, the approval process actively raises approvals on matching record events; when false, the process is paused."},"last_schema_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to settings."},"last_status_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to is_enabled."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Approval process schema as a JSON object conforming to the ApprovalProcessSchema type — trigger, filter, approver settings, and approve/reject nodes. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/a/#ApprovalProcessSchema This payload conforms to the `ApprovalProcessSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ApprovalProcessSchema.json","description":"ApprovalProcessSchema JSON Schema"}},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Files attached to the approval process (e.g. process documentation)."}}},"batchApprovalProcessInput":{"description":"Field values of an ApprovalProcess record to create, or to update when its id is set.","properties":{"description":{"type":"string","example":"string","description":"Free-text description shown alongside the approval process."},"is_enabled":{"type":"boolean","example":false,"description":"When true, the approval process actively raises approvals on matching record events; when false, the process is paused."},"last_schema_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to settings."},"last_status_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to is_enabled."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Approval process schema as a JSON object conforming to the ApprovalProcessSchema type — trigger, filter, approver settings, and approve/reject nodes. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/a/#ApprovalProcessSchema This payload conforms to the `ApprovalProcessSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ApprovalProcessSchema.json","description":"ApprovalProcessSchema JSON Schema"}},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Files attached to the approval process (e.g. process documentation)."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ApprovalProcessActivityLogLine":{"description":"Entry in the activity log of an approval, recording one step of the approval and its result.","properties":{"formatted_text":{"type":"string","example":"string","description":"Human-readable rendering of the log line, prefixed with the line's timestamp and (when applicable) the parent record id."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"approval":{"type":"string","format":"uri","description":"Approval this log line belongs to.\n\nRelated Approval record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Approval' for its fields."},"approval_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the approval this log line belongs to."},"data":{"type":"object","description":"Typed JSON payload describing the approval step (e.g. approver decisions, comments)."},"executed_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the step represented by this line was executed. Empty for scheduled steps that have not yet run."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its approval run."},"status":{"type":"integer","description":"Result of the approval step recorded by this line, such as Ok, Warning or Error.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}},"required":["formatted_text","is_delete_protected","id","approval","approval_id","data","sort_order"]},"createApprovalProcessActivityLogLineInput":{"description":"Field values of a new ApprovalProcessActivityLogLine record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"approval_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the approval this log line belongs to."},"data":{"type":"object","description":"Typed JSON payload describing the approval step (e.g. approver decisions, comments)."},"executed_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the step represented by this line was executed. Empty for scheduled steps that have not yet run."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its approval run."},"status":{"type":"integer","description":"Result of the approval step recorded by this line, such as Ok, Warning or Error.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}},"required":["approval_id","data","sort_order"]},"updateApprovalProcessActivityLogLineInput":{"description":"Field values to change on an ApprovalProcessActivityLogLine record; fields left out keep their values.","properties":{"approval_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the approval this log line belongs to."},"data":{"type":"object","description":"Typed JSON payload describing the approval step (e.g. approver decisions, comments)."},"executed_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the step represented by this line was executed. Empty for scheduled steps that have not yet run."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its approval run."},"status":{"type":"integer","description":"Result of the approval step recorded by this line, such as Ok, Warning or Error.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}}},"batchApprovalProcessActivityLogLineInput":{"description":"Field values of an ApprovalProcessActivityLogLine record to create, or to update when its id is set.","properties":{"approval_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the approval this log line belongs to."},"data":{"type":"object","description":"Typed JSON payload describing the approval step (e.g. approver decisions, comments)."},"executed_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the step represented by this line was executed. Empty for scheduled steps that have not yet run."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its approval run."},"status":{"type":"integer","description":"Result of the approval step recorded by this line, such as Ok, Warning or Error.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Call":{"description":"Phone call logged in the space, linked to the user who made it and to the contact, account, lead or opportunity it concerns.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account the call is linked to, when applicable.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"caller":{"type":"string","format":"uri","description":"User who initiated the call.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"client":{"type":"string","format":"uri","description":"User the call was made with, when the call was an internal user-to-user call.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact the call is linked to, when applicable.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead the call is linked to, when the call is associated with a lead.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity the call is linked to, when the call is associated with an opportunity.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"oppty_product_relation":{"type":"string","format":"uri","description":"Specific opportunity line-item discussed on the call, when applicable.\n\nRelated OpptyProductRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyProductRelation' for its fields."},"product":{"type":"string","format":"uri","description":"Product discussed on the call, when applicable.\n\nRelated Product record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Product' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"caller_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the calling user."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user the call was made with."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"oppty_product_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked opportunity product line-item."},"phone_number":{"type":"string","example":"string","description":"External phone number called or received, in E.164 format."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked product."},"transcription_id":{"type":"string","example":"string","description":"External transcription identifier from the calling provider."},"transcription_language":{"type":"string","example":"string","description":"Language requested for the transcription as a BCP-47 locale tag (e.g. \"en-US\")."},"transcription_summary":{"type":"string","example":"string","description":"AI-generated summary of the call transcription."},"twilio_call_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the call-log record from the calling provider that this call is associated with."},"transcription_file_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the cloud object holding the transcription payload, when available."},"audio_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the cloud object holding the call audio recording, when available."},"twilio_call_sid":{"type":"string","example":"string","description":"External call identifier from the calling provider (e.g. Twilio Call SID)."},"audio_status":{"type":"string","example":"NoRecording","enum":["NoRecording","TranscriptionCompleted","TranscriptionEmpty","TranscriptionError","TranscriptionInProgress","UploadError","Uploaded","Uploading"],"description":"Recording and transcription status of the call, computed by the server. The only accepted inputs are Uploading on create, to announce that a recording will be uploaded, and NoRecording on update, to mark that the call has no recording.","x-enumDescriptions":{"NoRecording":"The call has no recording.","Uploading":"The recording is not available yet.","Uploaded":"The recording is available; no transcription is in progress.","TranscriptionInProgress":"The recording is being transcribed.","TranscriptionError":"Transcription of the recording failed.","TranscriptionCompleted":"The transcription is available.","UploadError":"A transcription was requested but the recording could not be obtained.","TranscriptionEmpty":"The recording contained nothing to transcribe, for example because the call was too short."}}},"required":["is_delete_protected","id","caller","caller_id","twilio_call_log_id","twilio_call_sid","audio_status"]},"createCallInput":{"description":"Field values of a new Call record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"oppty_product_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Specific opportunity line-item discussed on the call, when applicable.\n\nRelated OpptyProductRelation record; see 'createOpptyProductRelationInput' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"caller_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the calling user."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user the call was made with."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"oppty_product_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked opportunity product line-item."},"phone_number":{"type":"string","example":"string","description":"External phone number called or received, in E.164 format."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked product."},"transcription_id":{"type":"string","example":"string","description":"External transcription identifier from the calling provider."},"transcription_language":{"type":"string","example":"string","description":"Language requested for the transcription as a BCP-47 locale tag (e.g. \"en-US\")."},"transcription_summary":{"type":"string","example":"string","description":"AI-generated summary of the call transcription."},"twilio_call_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the call-log record from the calling provider that this call is associated with."},"audio_status":{"type":"string","example":"NoRecording","enum":["NoRecording","TranscriptionCompleted","TranscriptionEmpty","TranscriptionError","TranscriptionInProgress","UploadError","Uploaded","Uploading"],"description":"Recording and transcription status of the call, computed by the server. The only accepted inputs are Uploading on create, to announce that a recording will be uploaded, and NoRecording on update, to mark that the call has no recording.","x-enumDescriptions":{"NoRecording":"The call has no recording.","Uploading":"The recording is not available yet.","Uploaded":"The recording is available; no transcription is in progress.","TranscriptionInProgress":"The recording is being transcribed.","TranscriptionError":"Transcription of the recording failed.","TranscriptionCompleted":"The transcription is available.","UploadError":"A transcription was requested but the recording could not be obtained.","TranscriptionEmpty":"The recording contained nothing to transcribe, for example because the call was too short."}}},"required":["caller_id","twilio_call_log_id","audio_status"]},"updateCallInput":{"description":"Field values to change on a Call record; fields left out keep their values.","properties":{"oppty_product_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Specific opportunity line-item discussed on the call, when applicable.\n\nRelated OpptyProductRelation record; see 'updateOpptyProductRelationInput' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"caller_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the calling user."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user the call was made with."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"oppty_product_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked opportunity product line-item."},"phone_number":{"type":"string","example":"string","description":"External phone number called or received, in E.164 format."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked product."},"transcription_id":{"type":"string","example":"string","description":"External transcription identifier from the calling provider."},"transcription_language":{"type":"string","example":"string","description":"Language requested for the transcription as a BCP-47 locale tag (e.g. \"en-US\")."},"transcription_summary":{"type":"string","example":"string","description":"AI-generated summary of the call transcription."},"twilio_call_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the call-log record from the calling provider that this call is associated with."},"audio_status":{"type":"string","example":"NoRecording","enum":["NoRecording","TranscriptionCompleted","TranscriptionEmpty","TranscriptionError","TranscriptionInProgress","UploadError","Uploaded","Uploading"],"description":"Recording and transcription status of the call, computed by the server. The only accepted inputs are Uploading on create, to announce that a recording will be uploaded, and NoRecording on update, to mark that the call has no recording.","x-enumDescriptions":{"NoRecording":"The call has no recording.","Uploading":"The recording is not available yet.","Uploaded":"The recording is available; no transcription is in progress.","TranscriptionInProgress":"The recording is being transcribed.","TranscriptionError":"Transcription of the recording failed.","TranscriptionCompleted":"The transcription is available.","UploadError":"A transcription was requested but the recording could not be obtained.","TranscriptionEmpty":"The recording contained nothing to transcribe, for example because the call was too short."}}}},"batchCallInput":{"description":"Field values of a Call record to create, or to update when its id is set.","properties":{"oppty_product_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Specific opportunity line-item discussed on the call, when applicable.\n\nRelated OpptyProductRelation record; see 'updateOpptyProductRelationInput' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"caller_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the calling user."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user the call was made with."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"oppty_product_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked opportunity product line-item."},"phone_number":{"type":"string","example":"string","description":"External phone number called or received, in E.164 format."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked product."},"transcription_id":{"type":"string","example":"string","description":"External transcription identifier from the calling provider."},"transcription_language":{"type":"string","example":"string","description":"Language requested for the transcription as a BCP-47 locale tag (e.g. \"en-US\")."},"transcription_summary":{"type":"string","example":"string","description":"AI-generated summary of the call transcription."},"twilio_call_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the call-log record from the calling provider that this call is associated with."},"audio_status":{"type":"string","example":"NoRecording","enum":["NoRecording","TranscriptionCompleted","TranscriptionEmpty","TranscriptionError","TranscriptionInProgress","UploadError","Uploaded","Uploading"],"description":"Recording and transcription status of the call, computed by the server. The only accepted inputs are Uploading on create, to announce that a recording will be uploaded, and NoRecording on update, to mark that the call has no recording.","x-enumDescriptions":{"NoRecording":"The call has no recording.","Uploading":"The recording is not available yet.","Uploaded":"The recording is available; no transcription is in progress.","TranscriptionInProgress":"The recording is being transcribed.","TranscriptionError":"Transcription of the recording failed.","TranscriptionCompleted":"The transcription is available.","UploadError":"A transcription was requested but the recording could not be obtained.","TranscriptionEmpty":"The recording contained nothing to transcribe, for example because the call was too short."}},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ChatConversation":{"description":"Conversation of a user with the AI assistant, either general or about a specific record.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User the conversation belongs to.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"context":{"type":"string","format":"binary","example":"blob","description":"Record context the conversation was started in (entity type, entity id and the AI screen view). Empty for conversations not bound to a record."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"type":{"type":"integer","description":"Kind of AI chat: a general conversation with the AI assistant, or one about a specific record identified by context.\n\nInteger enum value: 1 - AiChat, 2 - AiRecordDetail","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"General conversation with the AI assistant.","2":"Conversation with the AI assistant about a specific record."}},"messages":{"type":"array","items":{"type":"string","format":"uri","description":"Related TextMessage record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TextMessage' for its fields."},"description":"Messages exchanged in the conversation, in chronological order."}},"required":["is_delete_protected","id","owner","owner_id"]},"createChatConversationInput":{"description":"Field values of a new ChatConversation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"type":{"type":"integer","description":"Kind of AI chat: a general conversation with the AI assistant, or one about a specific record identified by context.\n\nInteger enum value: 1 - AiChat, 2 - AiRecordDetail","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"General conversation with the AI assistant.","2":"Conversation with the AI assistant about a specific record."}},"messages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessage record."}},"description":"Related TextMessage record; see 'createTextMessageInput' for its fields."},"description":"Messages exchanged in the conversation, in chronological order."}},"required":["owner_id"]},"updateChatConversationInput":{"description":"Field values to change on a ChatConversation record; fields left out keep their values.","properties":{"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"type":{"type":"integer","description":"Kind of AI chat: a general conversation with the AI assistant, or one about a specific record identified by context.\n\nInteger enum value: 1 - AiChat, 2 - AiRecordDetail","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"General conversation with the AI assistant.","2":"Conversation with the AI assistant about a specific record."}},"messages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessage record."}},"description":"Related TextMessage record; see 'updateTextMessageInput' for its fields."},"description":"Messages exchanged in the conversation, in chronological order."}}},"batchChatConversationInput":{"description":"Field values of a ChatConversation record to create, or to update when its id is set.","properties":{"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"type":{"type":"integer","description":"Kind of AI chat: a general conversation with the AI assistant, or one about a specific record identified by context.\n\nInteger enum value: 1 - AiChat, 2 - AiRecordDetail","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"General conversation with the AI assistant.","2":"Conversation with the AI assistant about a specific record."}},"messages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessage record."}},"description":"Related TextMessage record; see 'updateTextMessageInput' for its fields."},"description":"Messages exchanged in the conversation, in chronological order."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Client":{"description":"User of the space; owns records, belongs to sales units and has a user role that determines what they can do.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"default_unit":{"type":"string","format":"uri","description":"Default sales unit for the user. New records the user creates are assigned to this unit by default.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"master_right":{"type":"string","format":"uri","description":"User role assigned to the user. Determines what features and entities the user can access.\n\nRelated MasterRight record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MasterRight' for its fields."},"default_unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the default sales unit."},"email":{"type":"string","example":"string","description":"Email. Readonly information from UserProfile."},"first_name":{"type":"string","example":"string","description":"First name. Readonly information from UserProfile.","readOnly":true},"last_active":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the user's most recent login or API request.","readOnly":true},"last_name":{"type":"string","example":"string","description":"Last name. Readonly information from UserProfile.","readOnly":true},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assigned user role."},"middle_name":{"type":"string","example":"string","description":"Middle name. Readonly information from UserProfile.","readOnly":true},"phone":{"type":"string","example":"string","description":"Phone number. Readonly information from UserProfile.","readOnly":true},"picture_url":{"type":"string","example":"string","description":"Picture name. Readonly information from UserProfile.","readOnly":true},"position":{"type":"string","example":"string","description":"Job title or position of the user."},"region":{"type":"string","example":"string","description":"Region. Readonly information from UserProfile.","readOnly":true},"timezone":{"type":"string","example":"string","description":"Deprecated time zone offset of the user, copied from the user profile; read-only. Use timezone_name instead.","readOnly":true},"type":{"type":"integer","description":"Kind of user: a regular Customer user, a Coevera Support user, or a Placeholder demo user that becomes a Customer when reassigned to a real person.\n\nInteger enum value: 0 - Customer, 1 - Support, 2 - Placeholder","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Regular user of the space.","1":"Coevera customer-support user with access to the space.","2":"Placeholder user in a demo space that has not been assigned to a real person yet."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"default_idp":{"type":"integer","format":"int32","example":1,"description":"Id of the identity provider the user signs in with by default. Empty when none is set or it is disabled."},"user_profile_id":{"type":"integer","format":"int32","example":1,"description":"Id of the user account (login identity) this user belongs to."},"unit_membership":{"type":"array","items":{"type":"string","format":"uri","description":"Related SalesUnitClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnitClientRelation' for its fields."},"description":"Sales units the user belongs to (as member or manager)."},"appointment_favorite":{"type":"array","items":{"type":"string","format":"uri","description":"Related ClientFavorite record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ClientFavorite' for its fields."},"description":"Appointments marked as favorite by the user."},"task_favorite":{"type":"array","items":{"type":"string","format":"uri","description":"Related ClientFavorite record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ClientFavorite' for its fields."},"description":"Tasks marked as favorite by the user."},"account_favorite":{"type":"array","items":{"type":"string","format":"uri","description":"Related ClientFavorite record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ClientFavorite' for its fields."},"description":"Accounts marked as favorite by the user."},"contact_favorite":{"type":"array","items":{"type":"string","format":"uri","description":"Related ClientFavorite record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ClientFavorite' for its fields."},"description":"Contacts marked as favorite by the user."},"profile_favorite":{"type":"array","items":{"type":"string","format":"uri","description":"Related ClientFavorite record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ClientFavorite' for its fields."},"description":"Screen profiles marked as favorite by the user."},"report_favorite":{"type":"array","items":{"type":"string","format":"uri","description":"Related ClientFavorite record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ClientFavorite' for its fields."},"description":"Reports marked as favorite by the user."},"lead_favorite":{"type":"array","items":{"type":"string","format":"uri","description":"Related ClientFavorite record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ClientFavorite' for its fields."},"description":"Leads marked as favorite by the user."},"opportunity_favorite":{"type":"array","items":{"type":"string","format":"uri","description":"Related ClientFavorite record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ClientFavorite' for its fields."},"description":"Opportunities marked as favorite by the user."},"timezone_name":{"type":"string","example":"string","description":"IANA time zone name of the user (e.g. Europe/Prague), or empty when the time zone is set automatically from the user's operating system. Read-only."},"name":{"type":"string","example":"string","description":"Display name of the user, formatted according to the user's name format preference."},"formatted_name":{"type":"string","example":"string","description":"Display name of the user (alias of name)."},"unit_manager_ids":{"type":"array","items":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000"},"description":"Ids of all sales units the user manages, expanded to include all descendant units in each managed subtree."},"unit_member_ids":{"type":"array","items":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000"},"description":"Ids of sales units the user belongs to as a member only (not as a manager)."},"user_recalculation_state":{"type":"string","example":"InProgress","enum":["InProgress","NoRecalculation","Pending"],"description":"State of the user's row-level access recalculation: NoRecalculation (up to date), Pending (queued), or InProgress.","x-enumDescriptions":{"NoRecalculation":"The user's access is up to date.","InProgress":"Recalculation is running.","Pending":"Recalculation is queued."}}},"required":["is_delete_protected","id","default_unit","master_right","default_unit_id","email","master_right_id","unit_membership","formatted_name","unit_manager_ids","unit_member_ids"]},"createClientInput":{"description":"Field values of a new Client record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"default_unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the default sales unit."},"email":{"type":"string","example":"string","description":"Email. Readonly information from UserProfile."},"first_name":{"type":"string","example":"string","description":"First name. Readonly information from UserProfile.","readOnly":true},"last_active":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the user's most recent login or API request.","readOnly":true},"last_name":{"type":"string","example":"string","description":"Last name. Readonly information from UserProfile.","readOnly":true},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assigned user role."},"middle_name":{"type":"string","example":"string","description":"Middle name. Readonly information from UserProfile.","readOnly":true},"phone":{"type":"string","example":"string","description":"Phone number. Readonly information from UserProfile.","readOnly":true},"position":{"type":"string","example":"string","description":"Job title or position of the user."},"region":{"type":"string","example":"string","description":"Region. Readonly information from UserProfile.","readOnly":true},"timezone":{"type":"string","example":"string","description":"Deprecated time zone offset of the user, copied from the user profile; read-only. Use timezone_name instead.","readOnly":true},"type":{"type":"integer","description":"Kind of user: a regular Customer user, a Coevera Support user, or a Placeholder demo user that becomes a Customer when reassigned to a real person.\n\nInteger enum value: 0 - Customer, 1 - Support, 2 - Placeholder","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Regular user of the space.","1":"Coevera customer-support user with access to the space.","2":"Placeholder user in a demo space that has not been assigned to a real person yet."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"unit_membership":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related SalesUnitClientRelation record."}},"description":"Related SalesUnitClientRelation record; see 'createSalesUnitClientRelationInput' for its fields."},"description":"Sales units the user belongs to (as member or manager)."},"appointment_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'createClientFavoriteInput' for its fields."},"description":"Appointments marked as favorite by the user."},"task_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'createClientFavoriteInput' for its fields."},"description":"Tasks marked as favorite by the user."},"account_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'createClientFavoriteInput' for its fields."},"description":"Accounts marked as favorite by the user."},"contact_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'createClientFavoriteInput' for its fields."},"description":"Contacts marked as favorite by the user."},"profile_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'createClientFavoriteInput' for its fields."},"description":"Screen profiles marked as favorite by the user."},"report_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'createClientFavoriteInput' for its fields."},"description":"Reports marked as favorite by the user."},"lead_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'createClientFavoriteInput' for its fields."},"description":"Leads marked as favorite by the user."},"opportunity_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'createClientFavoriteInput' for its fields."},"description":"Opportunities marked as favorite by the user."}},"required":["default_unit_id","email","master_right_id","unit_membership"]},"updateClientInput":{"description":"Field values to change on a Client record; fields left out keep their values.","properties":{"default_unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the default sales unit."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assigned user role."},"position":{"type":"string","example":"string","description":"Job title or position of the user."},"type":{"type":"integer","description":"Kind of user: a regular Customer user, a Coevera Support user, or a Placeholder demo user that becomes a Customer when reassigned to a real person.\n\nInteger enum value: 0 - Customer, 1 - Support, 2 - Placeholder","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Regular user of the space.","1":"Coevera customer-support user with access to the space.","2":"Placeholder user in a demo space that has not been assigned to a real person yet."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"unit_membership":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related SalesUnitClientRelation record."}},"description":"Related SalesUnitClientRelation record; see 'updateSalesUnitClientRelationInput' for its fields."},"description":"Sales units the user belongs to (as member or manager)."},"appointment_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Appointments marked as favorite by the user."},"task_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Tasks marked as favorite by the user."},"account_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Accounts marked as favorite by the user."},"contact_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Contacts marked as favorite by the user."},"profile_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Screen profiles marked as favorite by the user."},"report_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Reports marked as favorite by the user."},"lead_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Leads marked as favorite by the user."},"opportunity_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Opportunities marked as favorite by the user."}}},"batchClientInput":{"description":"Field values of a Client record to create, or to update when its id is set.","properties":{"default_unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the default sales unit."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assigned user role."},"position":{"type":"string","example":"string","description":"Job title or position of the user."},"type":{"type":"integer","description":"Kind of user: a regular Customer user, a Coevera Support user, or a Placeholder demo user that becomes a Customer when reassigned to a real person.\n\nInteger enum value: 0 - Customer, 1 - Support, 2 - Placeholder","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Regular user of the space.","1":"Coevera customer-support user with access to the space.","2":"Placeholder user in a demo space that has not been assigned to a real person yet."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"unit_membership":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related SalesUnitClientRelation record."}},"description":"Related SalesUnitClientRelation record; see 'updateSalesUnitClientRelationInput' for its fields."},"description":"Sales units the user belongs to (as member or manager)."},"appointment_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Appointments marked as favorite by the user."},"task_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Tasks marked as favorite by the user."},"account_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Accounts marked as favorite by the user."},"contact_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Contacts marked as favorite by the user."},"profile_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Screen profiles marked as favorite by the user."},"report_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Reports marked as favorite by the user."},"lead_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Leads marked as favorite by the user."},"opportunity_favorite":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ClientFavorite record."}},"description":"Related ClientFavorite record; see 'updateClientFavoriteInput' for its fields."},"description":"Opportunities marked as favorite by the user."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ClientExcludedOppty":{"description":"Choice of a user to exclude an opportunity from their forecast and quota calculations, or to include it again.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"oppty":{"type":"string","format":"uri","description":"Opportunity excluded from the user's forecast/quota calculations.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"owner":{"type":"string","format":"uri","description":"User who excluded the opportunity from their forecast/quota.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"is_excluded":{"type":"boolean","example":false,"description":"When true, the opportunity is excluded from the user's forecast/quota; when false, the row records that the user explicitly re-included a previously excluded opportunity."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","oppty","owner","is_excluded","oppty_id","owner_id"]},"createClientExcludedOpptyInput":{"description":"Field values of a new ClientExcludedOppty record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"is_excluded":{"type":"boolean","example":false,"description":"When true, the opportunity is excluded from the user's forecast/quota; when false, the row records that the user explicitly re-included a previously excluded opportunity."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_excluded","oppty_id","owner_id"]},"updateClientExcludedOpptyInput":{"description":"Field values to change on a ClientExcludedOppty record; fields left out keep their values.","properties":{"is_excluded":{"type":"boolean","example":false,"description":"When true, the opportunity is excluded from the user's forecast/quota; when false, the row records that the user explicitly re-included a previously excluded opportunity."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchClientExcludedOpptyInput":{"description":"Field values of a ClientExcludedOppty record to create, or to update when its id is set.","properties":{"is_excluded":{"type":"boolean","example":false,"description":"When true, the opportunity is excluded from the user's forecast/quota; when false, the row records that the user explicitly re-included a previously excluded opportunity."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ClientFavorite":{"description":"Record or screen profile that a user has marked as a favorite.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account marked as favorite, when this favorite points to an account.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"appointment":{"type":"string","format":"uri","description":"Appointment marked as favorite. Set when activity_id resolves to an Appointment.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"task":{"type":"string","format":"uri","description":"Task marked as favorite. Set when activity_id resolves to a Task.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact marked as favorite, when this favorite points to a contact.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"custom_entity":{"type":"string","format":"uri","description":"Custom entity record marked as favorite, when this favorite points to a custom entity.\n\nRelated CustomEntity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntity' for its fields."},"email":{"type":"string","format":"uri","description":"Email marked as favorite, when this favorite points to an email.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead marked as favorite. Set when lead_oppty_id resolves to a Lead.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity marked as favorite. Set when lead_oppty_id resolves to an Opportunity.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"owner":{"type":"string","format":"uri","description":"User who marked the record as favorite.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"profile":{"type":"string","format":"uri","description":"Screen profile marked as favorite, when this favorite points to a profile.\n\nRelated Profile record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Profile' for its fields."},"project":{"type":"string","format":"uri","description":"Project marked as favorite, when this favorite points to a project.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote marked as favorite, when this favorite points to a quote.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"report":{"type":"string","format":"uri","description":"Report marked as favorite, when this favorite points to a report.\n\nRelated Report record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Report' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite account."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite appointment or task, or empty when not pointing to an activity."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite custom entity record."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite email."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite lead or opportunity, or empty when not pointing to one."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"profile_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite screen profile."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite quote."},"report_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite report."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","owner","owner_id"]},"createClientFavoriteInput":{"description":"Field values of a new ClientFavorite record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite account."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite appointment or task, or empty when not pointing to an activity."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite custom entity record."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite email."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite lead or opportunity, or empty when not pointing to one."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"profile_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite screen profile."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite quote."},"report_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite report."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["owner_id"]},"updateClientFavoriteInput":{"description":"Field values to change on a ClientFavorite record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite account."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite appointment or task, or empty when not pointing to an activity."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite custom entity record."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite email."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite lead or opportunity, or empty when not pointing to one."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"profile_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite screen profile."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite quote."},"report_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite report."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchClientFavoriteInput":{"description":"Field values of a ClientFavorite record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite account."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite appointment or task, or empty when not pointing to an activity."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite custom entity record."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite email."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite lead or opportunity, or empty when not pointing to one."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"profile_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite screen profile."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite quote."},"report_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the favorite report."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ClientSetting":{"description":"Personal setting of a user, stored as a named value.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User the setting belongs to.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"name":{"type":"string","example":"string","description":"Setting key (unique per user)."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"value":{"type":"object","description":"Setting value, stored as a JSON document."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","owner","name","owner_id","value"]},"ClientStoryRead":{"description":"Mark that a user has read an activity, email or memo in their feed, and whether they chose not to follow up on it.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment":{"type":"string","format":"uri","description":"Appointment that was read. Set when activity_id resolves to an Appointment.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"task":{"type":"string","format":"uri","description":"Task that was read. Set when activity_id resolves to a Task.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"email":{"type":"string","format":"uri","description":"Email that was read. Set when message_id resolves to an Email.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"memo":{"type":"string","format":"uri","description":"Memo that was read. Set when message_id resolves to a Memo.\n\nRelated Memo record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Memo' for its fields."},"owner":{"type":"string","format":"uri","description":"User who read the activity or message.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the read appointment or task, or empty when this read points to a message."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the read email or memo, or empty when this read points to an activity."},"no_follow":{"type":"boolean","example":false,"description":"When true, the user explicitly chose not to follow up on this item."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reading user."},"read_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the user marked the item as read."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","owner","owner_id","read_at"]},"createClientStoryReadInput":{"description":"Field values of a new ClientStoryRead record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the read appointment or task, or empty when this read points to a message."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the read email or memo, or empty when this read points to an activity."},"no_follow":{"type":"boolean","example":false,"description":"When true, the user explicitly chose not to follow up on this item."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reading user."},"read_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the user marked the item as read."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["owner_id","read_at"]},"updateClientStoryReadInput":{"description":"Field values to change on a ClientStoryRead record; fields left out keep their values.","properties":{"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the read appointment or task, or empty when this read points to a message."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the read email or memo, or empty when this read points to an activity."},"no_follow":{"type":"boolean","example":false,"description":"When true, the user explicitly chose not to follow up on this item."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reading user."},"read_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the user marked the item as read."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchClientStoryReadInput":{"description":"Field values of a ClientStoryRead record to create, or to update when its id is set.","properties":{"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the read appointment or task, or empty when this read points to a message."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the read email or memo, or empty when this read points to an activity."},"no_follow":{"type":"boolean","example":false,"description":"When true, the user explicitly chose not to follow up on this item."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reading user."},"read_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the user marked the item as read."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"CloudObject":{"description":"File stored in the space, such as a document, image or recording, that can be attached to records.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"application":{"type":"string","format":"uri","description":"Application that produced the object (e.g. Online Forms).\n\nRelated Application record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Application' for its fields."},"company_cloud_object_folder":{"type":"string","format":"uri","description":"Company-level folder that contains the object, when stored in the company document tree.\n\nRelated CloudObjectFolder record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectFolder' for its fields."},"creator":{"type":"string","format":"uri","description":"User who uploaded the object.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the producing application."},"company_cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company folder, or empty when the object is not stored in the company tree."},"creator_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the uploading user."},"filename":{"type":"string","example":"string","description":"File name (with extension) used when downloading the object."},"is_public":{"type":"boolean","example":false,"description":"When true, the object can be served via a public URL (see public_url)."},"mime_type":{"type":"string","example":"string","description":"Mime-type of the cloud object Is detected from content.","readOnly":true},"params":{"type":"object","description":"Additional metadata about the object (e.g. image dimensions, audio duration), as a JSON object."},"size":{"type":"integer","format":"int32","example":1,"description":"Size of the object in bytes.","readOnly":true},"type":{"type":"integer","description":"Where the file is stored and how its content is obtained: a file in Coevera storage, a file linked from a cloud drive such as Google Drive or OneDrive, or an external URL. Set on create only.\n\nInteger enum value: -1 - S3FileUpload, 1 - S3File, 2 - S3Image, 3 - GoogleDriveFile, 4 - OneDriveFile, 5 - BoxFile, 6 - DropboxFile, 7 - SharepointFile, 8 - ExternalURL, 9 - AlfrescoFile, 10 - UrlFile","example":-1,"enum":[-1,1,2,3,4,5,6,7,8,9,10],"readOnly":true,"x-enumDescriptions":{"1":"File stored in Coevera storage; content can be sent directly or is downloaded from url.","2":"Image stored in Coevera storage, such as a record picture or product image.","3":"File linked from Google Drive.","4":"File linked from OneDrive.","5":"File linked from Box.","6":"File linked from Dropbox.","7":"File linked from SharePoint.","8":"Link to an external web page or resource.","9":"File linked from Alfresco.","10":"File referenced by a direct download URL.","-1":"Use on create when url points to a file already uploaded to Coevera storage; the object is then saved as S3File."}},"upload_source":{"type":"integer","description":"Editor the uploaded image is embedded in, such as an email template or rich-text content. Empty for files that are not embedded images.\n\nInteger enum value: 1 - EmailTemplate, 2 - RichTextEditor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Image embedded in an email template.","2":"Image embedded in rich-text content, such as a note or description."}},"url":{"type":"string","example":"string","description":"URL of the object. If URL scheme is not defined \"http://\" is automatically prepended to supplied URL.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"dimensions":{"type":"object","description":"Width and height of the image in pixels; empty for files that are not images."},"duration":{"type":"number","format":"double","example":4.32,"description":"Duration of the audio recording in seconds; empty for other files."},"public_url":{"type":"string","example":"string","description":"Publicly accessible link to the file; empty unless the file is marked as public."}},"required":["is_delete_protected","id","filename","size","type"]},"createCloudObjectInput":{"description":"Field values of a new CloudObject record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the producing application."},"company_cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company folder, or empty when the object is not stored in the company tree."},"creator_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the uploading user."},"filename":{"type":"string","example":"string","description":"File name (with extension) used when downloading the object."},"is_public":{"type":"boolean","example":false,"description":"When true, the object can be served via a public URL (see public_url)."},"mime_type":{"type":"string","example":"string","description":"Mime-type of the cloud object Is detected from content.","readOnly":true},"params":{"type":"object","description":"Additional metadata about the object (e.g. image dimensions, audio duration), as a JSON object."},"type":{"type":"integer","description":"Where the file is stored and how its content is obtained: a file in Coevera storage, a file linked from a cloud drive such as Google Drive or OneDrive, or an external URL. Set on create only.\n\nInteger enum value: -1 - S3FileUpload, 1 - S3File, 2 - S3Image, 3 - GoogleDriveFile, 4 - OneDriveFile, 5 - BoxFile, 6 - DropboxFile, 7 - SharepointFile, 8 - ExternalURL, 9 - AlfrescoFile, 10 - UrlFile","example":-1,"enum":[-1,1,2,3,4,5,6,7,8,9,10],"readOnly":true,"x-enumDescriptions":{"1":"File stored in Coevera storage; content can be sent directly or is downloaded from url.","2":"Image stored in Coevera storage, such as a record picture or product image.","3":"File linked from Google Drive.","4":"File linked from OneDrive.","5":"File linked from Box.","6":"File linked from Dropbox.","7":"File linked from SharePoint.","8":"Link to an external web page or resource.","9":"File linked from Alfresco.","10":"File referenced by a direct download URL.","-1":"Use on create when url points to a file already uploaded to Coevera storage; the object is then saved as S3File."}},"upload_source":{"type":"integer","description":"Editor the uploaded image is embedded in, such as an email template or rich-text content. Empty for files that are not embedded images.\n\nInteger enum value: 1 - EmailTemplate, 2 - RichTextEditor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Image embedded in an email template.","2":"Image embedded in rich-text content, such as a note or description."}},"url":{"type":"string","example":"string","description":"URL of the object. If URL scheme is not defined \"http://\" is automatically prepended to supplied URL.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"content":{"type":"string","format":"binary","example":"blob","description":"Data content of the object."}},"required":["filename","type"]},"updateCloudObjectInput":{"description":"Field values to change on a CloudObject record; fields left out keep their values.","properties":{"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the producing application."},"company_cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company folder, or empty when the object is not stored in the company tree."},"creator_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the uploading user."},"filename":{"type":"string","example":"string","description":"File name (with extension) used when downloading the object."},"is_public":{"type":"boolean","example":false,"description":"When true, the object can be served via a public URL (see public_url)."},"params":{"type":"object","description":"Additional metadata about the object (e.g. image dimensions, audio duration), as a JSON object."},"upload_source":{"type":"integer","description":"Editor the uploaded image is embedded in, such as an email template or rich-text content. Empty for files that are not embedded images.\n\nInteger enum value: 1 - EmailTemplate, 2 - RichTextEditor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Image embedded in an email template.","2":"Image embedded in rich-text content, such as a note or description."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchCloudObjectInput":{"description":"Field values of a CloudObject record to create, or to update when its id is set.","properties":{"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the producing application."},"company_cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company folder, or empty when the object is not stored in the company tree."},"creator_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the uploading user."},"filename":{"type":"string","example":"string","description":"File name (with extension) used when downloading the object."},"is_public":{"type":"boolean","example":false,"description":"When true, the object can be served via a public URL (see public_url)."},"params":{"type":"object","description":"Additional metadata about the object (e.g. image dimensions, audio duration), as a JSON object."},"upload_source":{"type":"integer","description":"Editor the uploaded image is embedded in, such as an email template or rich-text content. Empty for files that are not embedded images.\n\nInteger enum value: 1 - EmailTemplate, 2 - RichTextEditor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Image embedded in an email template.","2":"Image embedded in rich-text content, such as a note or description."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"CloudObjectFolder":{"description":"Folder that organizes files, either in the company documents or within a record.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"online_form_type":{"type":"string","format":"uri","description":"Online form template this folder is associated with, when the folder stores form submissions.\n\nRelated OnlineFormType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineFormType' for its fields."},"parent_cloud_object_folder":{"type":"string","format":"uri","description":"Parent folder, when this folder is nested. Empty for top-level folders.\n\nRelated CloudObjectFolder record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectFolder' for its fields."},"entity_api_name":{"type":"string","example":"string","description":"API name of the custom entity the folder is attached to. Set only for folders on custom entity records; otherwise empty."},"entity_type":{"type":"integer","description":"Entity of the record the folder belongs to (lead, opportunity, account, contact, project, quote or custom entity). Empty for company folders; set on create only.\n\nInteger enum value: 1 - Lead, 2 - Account, 3 - Contact, 4 - Opportunity, 5 - Task, 6 - Appointment, 7 - OpptyProductRelation, 8 - Project, 9 - Quote, 10 - OnlineForm, 11 - CustomEntity, 12 - Product","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","3":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","5":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","6":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","7":"Product line of an opportunity.","8":"Project delivered for an account or run internally, with its objectives, activities and progress.","9":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","10":"Submission (response) of an online form, with the answers and the records it created or updated.","11":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","12":"Product or service in the catalog that can be added as a line item to opportunities and quotes."}},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"online_form_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form template, or empty when not associated with a form."},"parent_cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent folder, or empty for top-level folders."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","name"]},"createCloudObjectFolderInput":{"description":"Field values of a new CloudObjectFolder record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"entity_api_name":{"type":"string","example":"string","description":"API name of the custom entity the folder is attached to. Set only for folders on custom entity records; otherwise empty."},"entity_type":{"type":"integer","description":"Entity of the record the folder belongs to (lead, opportunity, account, contact, project, quote or custom entity). Empty for company folders; set on create only.\n\nInteger enum value: 1 - Lead, 2 - Account, 3 - Contact, 4 - Opportunity, 5 - Task, 6 - Appointment, 7 - OpptyProductRelation, 8 - Project, 9 - Quote, 10 - OnlineForm, 11 - CustomEntity, 12 - Product","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","3":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","5":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","6":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","7":"Product line of an opportunity.","8":"Project delivered for an account or run internally, with its objectives, activities and progress.","9":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","10":"Submission (response) of an online form, with the answers and the records it created or updated.","11":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","12":"Product or service in the catalog that can be added as a line item to opportunities and quotes."}},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"online_form_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form template, or empty when not associated with a form."},"parent_cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent folder, or empty for top-level folders."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["name"]},"updateCloudObjectFolderInput":{"description":"Field values to change on a CloudObjectFolder record; fields left out keep their values.","properties":{"entity_api_name":{"type":"string","example":"string","description":"API name of the custom entity the folder is attached to. Set only for folders on custom entity records; otherwise empty."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"online_form_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form template, or empty when not associated with a form."},"parent_cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent folder, or empty for top-level folders."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchCloudObjectFolderInput":{"description":"Field values of a CloudObjectFolder record to create, or to update when its id is set.","properties":{"entity_api_name":{"type":"string","example":"string","description":"API name of the custom entity the folder is attached to. Set only for folders on custom entity records; otherwise empty."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"online_form_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form template, or empty when not associated with a form."},"parent_cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent folder, or empty for top-level folders."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"CloudObjectRelation":{"description":"Attachment of a file to a record, such as an account, contact, opportunity, activity or email template, optionally in a folder of that record.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account the file is attached to, or empty when not attached to an account.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"appointment":{"type":"string","format":"uri","description":"Appointment the file is attached to. Set when activity_id resolves to an Appointment.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"task":{"type":"string","format":"uri","description":"Task the file is attached to. Set when activity_id resolves to a Task.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"approval_process":{"type":"string","format":"uri","description":"Approval process the file is attached to.\n\nRelated ApprovalProcess record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ApprovalProcess' for its fields."},"call":{"type":"string","format":"uri","description":"Call the file is attached to (e.g. a call recording).\n\nRelated Call record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Call' for its fields."},"cloud_object_folder":{"type":"string","format":"uri","description":"Folder the file is filed under within the parent record, or empty when stored at the record root.\n\nRelated CloudObjectFolder record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectFolder' for its fields."},"cloud_object":{"type":"string","format":"uri","description":"Cloud object (file) being linked.\n\nRelated CloudObject record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObject' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact the file is attached to, or empty when not attached to a contact.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"custom_entity":{"type":"string","format":"uri","description":"Custom entity record the file is attached to.\n\nRelated CustomEntity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntity' for its fields."},"email_sequence":{"type":"string","format":"uri","description":"Email sequence the file is attached to.\n\nRelated EmailSequence record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailSequence' for its fields."},"email_template":{"type":"string","format":"uri","description":"Email template the file is attached to as a template attachment.\n\nRelated EmailTemplate record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailTemplate' for its fields."},"field_mapping":{"type":"string","format":"uri","description":"Field mapping the file is attached to (e.g. an import file).\n\nRelated FieldMapping record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'FieldMapping' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead the file is attached to. Set when lead_oppty_id resolves to a Lead.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity the file is attached to. Set when lead_oppty_id resolves to an Opportunity.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"media":{"type":"string","format":"uri","description":"Media record the file is attached to.\n\nRelated Media record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Media' for its fields."},"email":{"type":"string","format":"uri","description":"Email the file is attached to (e.g. an email attachment). Set when message_id resolves to an Email.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"memo":{"type":"string","format":"uri","description":"Memo the file is attached to. Set when message_id resolves to a Memo.\n\nRelated Memo record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Memo' for its fields."},"online_form_field":{"type":"string","format":"uri","description":"Online form field the file was uploaded into.\n\nRelated Field record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Field' for its fields."},"online_form":{"type":"string","format":"uri","description":"Online form submission the file was uploaded with.\n\nRelated OnlineForm record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineForm' for its fields."},"process":{"type":"string","format":"uri","description":"Sales process the file is attached to.\n\nRelated Process record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Process' for its fields."},"process_template":{"type":"string","format":"uri","description":"Sales process template the file is attached to.\n\nRelated ProcessTemplate record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProcessTemplate' for its fields."},"project":{"type":"string","format":"uri","description":"Project the file is attached to.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote the file is attached to.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"report_schedule":{"type":"string","format":"uri","description":"Report schedule the file is attached to (e.g. an exported report).\n\nRelated ReportSchedule record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ReportSchedule' for its fields."},"text_message":{"type":"string","format":"uri","description":"Text message (SMS/MMS) the file is attached to.\n\nRelated TextMessage record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TextMessage' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked appointment or task, or empty when not linked."},"approval_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked approval process."},"call_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked call."},"cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the folder within the parent record, or empty when stored at the record root."},"cloud_object_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked file."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email sequence."},"email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email template."},"field_mapping_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked field mapping."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"media_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked media record."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email or memo, or empty when not linked."},"online_form_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form field the file was uploaded into."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked online form submission."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked sales process."},"process_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked sales process template."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"report_schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked report schedule."},"text_message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked text message."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id"]},"createCloudObjectRelationInput":{"description":"Field values of a new CloudObjectRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"cloud_object":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Cloud object (file) being linked.\n\nRelated CloudObject record; see 'createCloudObjectInput' for its fields."},"report_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ReportSchedule record."}},"description":"Report schedule the file is attached to (e.g. an exported report).\n\nRelated ReportSchedule record; see 'createReportScheduleInput' for its fields."},"text_message":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessage record."}},"description":"Text message (SMS/MMS) the file is attached to.\n\nRelated TextMessage record; see 'createTextMessageInput' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked appointment or task, or empty when not linked."},"approval_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked approval process."},"call_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked call."},"cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the folder within the parent record, or empty when stored at the record root."},"cloud_object_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked file."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email sequence."},"email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email template."},"field_mapping_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked field mapping."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"media_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked media record."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email or memo, or empty when not linked."},"online_form_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form field the file was uploaded into."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked online form submission."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked sales process."},"process_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked sales process template."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"report_schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked report schedule."},"text_message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked text message."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"updateCloudObjectRelationInput":{"description":"Field values to change on a CloudObjectRelation record; fields left out keep their values.","properties":{"cloud_object":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Cloud object (file) being linked.\n\nRelated CloudObject record; see 'updateCloudObjectInput' for its fields."},"report_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ReportSchedule record."}},"description":"Report schedule the file is attached to (e.g. an exported report).\n\nRelated ReportSchedule record; see 'updateReportScheduleInput' for its fields."},"text_message":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessage record."}},"description":"Text message (SMS/MMS) the file is attached to.\n\nRelated TextMessage record; see 'updateTextMessageInput' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked appointment or task, or empty when not linked."},"approval_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked approval process."},"call_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked call."},"cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the folder within the parent record, or empty when stored at the record root."},"cloud_object_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked file."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email sequence."},"email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email template."},"field_mapping_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked field mapping."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"media_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked media record."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email or memo, or empty when not linked."},"online_form_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form field the file was uploaded into."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked online form submission."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked sales process."},"process_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked sales process template."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"report_schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked report schedule."},"text_message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked text message."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchCloudObjectRelationInput":{"description":"Field values of a CloudObjectRelation record to create, or to update when its id is set.","properties":{"cloud_object":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Cloud object (file) being linked.\n\nRelated CloudObject record; see 'updateCloudObjectInput' for its fields."},"report_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ReportSchedule record."}},"description":"Report schedule the file is attached to (e.g. an exported report).\n\nRelated ReportSchedule record; see 'updateReportScheduleInput' for its fields."},"text_message":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessage record."}},"description":"Text message (SMS/MMS) the file is attached to.\n\nRelated TextMessage record; see 'updateTextMessageInput' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked appointment or task, or empty when not linked."},"approval_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked approval process."},"call_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked call."},"cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the folder within the parent record, or empty when stored at the record root."},"cloud_object_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked file."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email sequence."},"email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email template."},"field_mapping_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked field mapping."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"media_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked media record."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email or memo, or empty when not linked."},"online_form_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form field the file was uploaded into."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked online form submission."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked sales process."},"process_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked sales process template."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"report_schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked report schedule."},"text_message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked text message."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"CloudObjectStepRelation":{"description":"File attached to a pipeline step, such as a document the sales team uses in that step.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"cloud_object":{"type":"string","format":"uri","description":"File attached to the step.\n\nRelated CloudObject record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObject' for its fields."},"step":{"type":"string","format":"uri","description":"Pipeline step the file is attached to.\n\nRelated Step record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Step' for its fields."},"cloud_object_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the attached file."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the file within the step's document list."},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline step."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","cloud_object","step","step_id"]},"createCloudObjectStepRelationInput":{"description":"Field values of a new CloudObjectStepRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"cloud_object":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"File attached to the step.\n\nRelated CloudObject record; see 'createCloudObjectInput' for its fields."},"cloud_object_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the attached file."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the file within the step's document list."},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline step."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["cloud_object","step_id"]},"updateCloudObjectStepRelationInput":{"description":"Field values to change on a CloudObjectStepRelation record; fields left out keep their values.","properties":{"cloud_object":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"File attached to the step.\n\nRelated CloudObject record; see 'updateCloudObjectInput' for its fields."},"cloud_object_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the attached file."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the file within the step's document list."},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline step."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchCloudObjectStepRelationInput":{"description":"Field values of a CloudObjectStepRelation record to create, or to update when its id is set.","properties":{"cloud_object":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"File attached to the step.\n\nRelated CloudObject record; see 'updateCloudObjectInput' for its fields."},"cloud_object_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the attached file."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the file within the step's document list."},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline step."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"CloudObjectTemplate":{"description":"Document template, such as a Word or Excel file with placeholders, used to generate documents filled with record data.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"application":{"type":"string","format":"uri","description":"Application that produced the object (e.g. Online Forms).\n\nRelated Application record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Application' for its fields."},"company_cloud_object_folder":{"type":"string","format":"uri","description":"Company-level folder that contains the object, when stored in the company document tree.\n\nRelated CloudObjectFolder record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectFolder' for its fields."},"creator":{"type":"string","format":"uri","description":"User who uploaded the object.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the producing application."},"company_cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company folder, or empty when the object is not stored in the company tree."},"creator_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the uploading user."},"filename":{"type":"string","example":"string","description":"File name (with extension) used when downloading the object."},"is_public":{"type":"boolean","example":false,"description":"When true, the object can be served via a public URL (see public_url)."},"mime_type":{"type":"string","example":"string","description":"Mime-type of the cloud object Is detected from content.","readOnly":true},"size":{"type":"integer","format":"int32","example":1,"description":"Size of the object in bytes.","readOnly":true},"status":{"type":"integer","description":"Whether the document template is active and offered for generating documents, or inactive and kept for later use. Defaults to Active.\n\nInteger enum value: 1 - Active, 2 - Inactive","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Template is available for generating documents.","2":"Template is kept but not offered for generating documents."}},"template_entity_name":{"type":"string","example":"Account","enum":["Account","AccountDataExRelation","AccountKPI","AccountProductPricing","AccountRole","AccountSharingClientRelation","AccountSharingSalesUnitRelation","AccountSocialRelation","AccountType","Activity","ActivityComment","ActivityDataExRelation","ActivityDetail","ActivityKPI","ActivityRelation","ActivityType","AiAgent","AiBalance","AiEvent","AiEventJournal","AllowedAccountType","AllowedAppointmentType","AllowedCompanyPhone","AllowedContactType","AllowedLeadType","AllowedPipeline","AllowedQuoteType","AllowedTaskType","ApiAccess","Application","Appointment","AppointmentClientInviteesRelation","AppointmentContactInviteesRelation","AppointmentInviteeNotifyQueue","AppointmentReminder","AppointmentSchedule","AppointmentType","Approval","ApprovalApprover","ApprovalProcess","ApprovalProcessActivityLogLine","AuditLog","AutomationHubApp","AutomationHubCategory","AutomationHubItem","ChatConversation","Client","ClientExcludedOppty","ClientFavorite","ClientSetting","ClientStoryRead","CloudObject","CloudObjectFolder","CloudObjectRelation","CloudObjectStepRelation","CloudObjectTemplate","CompanyEmail","Contact","ContactAccountAccountRoleRelation","ContactAccountRelation","ContactDataExRelation","ContactKPI","ContactRelation","ContactRelationType","ContactSharingClientRelation","ContactSharingSalesUnitRelation","ContactSocialRelation","ContactType","Country","CountryCrm","CpActivity","CpCallLog","CpCalling","CpClient","CpProduct","CpProfile","CpTeamSpaceClient","Currency","CurrencyExchangeRate","CurrencyExchangeRatesList","CustomEntity","CustomEntityDataExRelation","CustomEntityKPI","CustomEntityRelation","CustomEntityRelationData","CustomEntitySharingClientRelation","CustomEntitySharingSalesUnitRelation","CustomEntityType","Data","Ebook","Email","EmailContentSharingClientRelation","EmailContentSharingSalesUnitRelation","EmailLabel","EmailLabelRelation","EmailMailboxRelation","EmailSequence","EmailSequenceActivityLog","EmailSequenceActivityLogLine","EmailSequenceEnrolled","EmailSequenceEnrolledStatus","EmailSequenceSettings","EmailTemplate","EmailTemplateFolder","EmailTemplateSharingClientRelation","EmailTemplateSharingSalesUnitRelation","EmailThreadMailboxClientReadState","Entity","EntityFitness","EntityFitnessIndicator","EntityHealth","EntityHealthSettingsHistory","EntityScoring","EntitySettings","EntityType","Field","FieldMapping","FieldPermission","FieldSequence","Forecast","ForecastSharingClientRelation","ForecastSharingSalesUnitRelation","FormView","FormViewSharingClientRelation","FormViewSharingSalesUnitRelation","GhostContact","GhostContactAccountAccountRoleRelation","GhostContactAccountRelation","GhostLeadOpptyContactRelation","GhostLeadOpptyContactSalesRoleRelation","HowTo","ImportMappingMask","InterfacePreview","Lead","LeadOppty","LeadOpptyAccountRelation","LeadOpptyContactGroupRelation","LeadOpptyContactRelation","LeadOpptyContactSalesRoleRelation","LeadOpptyDataExRelation","LeadOpptyKPI","LeadOpptyProjectRelation","LeadOpptySharingClientRelation","LeadOpptySharingSalesUnitRelation","LeadOpptyStepCheckListRelation","LeadOpptyType","LeadProcess","LeadType","MasterRight","Media","Memo","MemoComment","Message","MessageRelation","MessageSharingClientRelation","MessageSharingSalesUnitRelation","Note","NotificationSetting","OnlineForm","OnlineFormActivityLogLine","OnlineFormDataExRelation","OnlineFormRelation","OnlineFormStyle","OnlineFormType","OnlineFormTypeEmailRelation","Opportunity","OpportunityType","OpptyProductRelation","OpptyProductRelationDataExRelation","OpptyProductRelationRevenueSchedule","OpptyProductRelationRevenueSchedulePeriod","OpptyProductRelationType","OpptyRecurrence","OpptyRevenueSchedule","OpptyRevenueSchedulePeriod","Order","OrderHistory","OrderItem","OrderRelatedDocument","OrderTempData","OrderTempDataItem","ParentAccountRelationType","Partner","Payment","PaymentAdditionalData","PaymentTerm","Phone","Pipeline","Process","ProcessActivityLog","ProcessActivityLogLine","ProcessChangeOwnerLog","ProcessScheduledAction","ProcessTemplate","Product","ProductCategory","ProductDataExRelation","ProductPipelineRelation","ProductPriceList","ProductPriceListPrice","ProductType","Profile","ProfileDraft","ProfileRelation","ProfileSharingClientRelation","ProfileSharingSalesUnitRelation","Project","ProjectContactRelation","ProjectDataExRelation","ProjectKPI","ProjectObjective","ProjectSharingClientRelation","ProjectSharingSalesUnitRelation","ProjectType","PurchasedProduct","Quote","QuoteAccountRelation","QuoteContactRelation","QuoteDataExRelation","QuoteKPI","QuoteProcess","QuoteSharingClientRelation","QuoteSharingSalesUnitRelation","QuoteType","ReleaseNote","Report","ReportFolder","ReportSchedule","ReportSharingClientRelation","ReportSharingSalesUnitRelation","RevenueRecognition","SalesRole","SalesUnit","SalesUnitClientRelation","SapiUser","Solution","SolutionTemplate","SpaceSetting","State","Step","StepChecklist","StepChecklistSalesRoleRelation","Storylane","Subscription","SubscriptionHubItem","SubscriptionNotification","SubscriptionRepresentative","SubscriptionSDR","Supplier","Tag","TagRelation","Target","TargetRelation","Task","TaskRecurrence","TaskReminder","TaskSharingClientRelation","TaskSharingSalesUnitRelation","TaskType","TeamPipelineHubItem","TeamPipelineHubItemBase","TeamSpace","TeamSpaceClient","TeamSpaceClientSetting","TeamSpaceProperty","TeamSpaceRegion","TextMessage","TextMessageConversation","TextMessageConversationRelations","Timeframe","Translation","Type","UnsubscribedPhone","UseCase","UserProfile","UserRole","Webhook","WebhookEvent","Webresource"],"description":"Entity type the template renders (e.g. Account, Opportunity, Quote). For custom entities, the value is \"CustomEntity\" and the API name is exposed via template_entity_api_name.","x-enumDescriptions":{"AiAgent":"AI agent offered in the Automation Hub, such as an AI assistant integration, whose use is recorded as AI events.","AiBalance":"AI credit balance of a subscription for a period, with the free credits remaining and spent and the overage credits used.","AiEvent":"Use of an AI agent by a user in a space, with its outcome, response time and the AI credits it consumed.","AiEventJournal":"Single AI model call made while handling an AI event, with the model used, its response time and cost.","AuditLog":"Entry of the space audit log recording an administrative action, such as a data export, a user invitation or a sales unit change, and who performed it.","Account":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","AccountKPI":"Recorded KPI event of an account, such as its creation, archiving or the first and last email sent, used in KPI reports.","AccountRole":"Role a contact can hold at an account, configurable per space and assigned on the link between the contact and the account.","AccountSharingClientRelation":"Sharing of an account with a user, as a watcher or an editor.","AccountSharingSalesUnitRelation":"Sharing of an account with a sales unit, as a watcher or an editor.","AccountSocialRelation":"Social network profiles of an account, such as its LinkedIn, Twitter or Facebook pages.","AccountProductPricing":"Special price of a product for one account, used instead of the regular price when the product is sold to that account.","AccountType":"Configurable category of accounts that defines the form layout and settings used for accounts of that type.","Activity":"Task or appointment: the common view of the to-dos and meetings of the sales team, linked to the records they concern.","ActivityComment":"Comment written by a user on a task or an appointment.","ActivityKPI":"Recorded KPI event of a task or an appointment, such as its creation or completion, used in KPI reports.","ActivityRelation":"Link of a task or an appointment to a record it concerns, such as an account, contact, lead, opportunity, project or quote.","ActivityType":"Task type or appointment type, with the settings both kinds of activity types share.","AllowedLeadType":"Lead type that a user role is allowed to use.","AllowedPipeline":"Pipeline that a user role is allowed to use, optionally with access to the documents of its steps.","ApiAccess":"API credentials that an integration uses to access the space, with the parts of the API they may read or write.","Application":"Application that works with the space, such as the web or mobile app, an Automation Hub integration or an API access; changes and events are attributed to it.","Appointment":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","AppointmentClientInviteesRelation":"Invitation of a user of the space to an appointment, with their response.","AppointmentContactInviteesRelation":"Invitation of an external person to an appointment, identified by email and matched to a contact when one exists, with their response.","AppointmentInviteeNotifyQueue":"Invitation email for an appointment that is waiting to be sent to an invitee's email address.","AppointmentReminder":"Reminder a user has set for an appointment, notifying them a given time before it starts.","AppointmentSchedule":"Online booking link through which people book appointments with a user in the time slots the user has available.","AppointmentType":"Configurable category of appointments, such as a meeting or a call, that defines their form layout and icon.","AllowedAccountType":"Account type that a user role is allowed to use.","AllowedAppointmentType":"Appointment type that a user role is allowed to use.","AllowedContactType":"Contact type that a user role is allowed to use.","AllowedCompanyPhone":"Company phone number that a user role is allowed to use for calls and text messages.","AllowedTaskType":"Task type that a user role is allowed to use.","Approval":"Approval request that an approval process raised for a record, such as a quote or an opportunity, waiting for the decision of its approvers.","ApprovalApprover":"User asked to decide an approval request, with their response and comment.","ApprovalProcess":"Approval rule that raises approval requests for records of an entity when its trigger conditions are met, and defines who approves them.","ApprovalProcessActivityLogLine":"Entry in the activity log of an approval, recording one step of the approval and its result.","ChatConversation":"Conversation of a user with the AI assistant, either general or about a specific record.","Client":"User of the space; owns records, belongs to sales units and has a user role that determines what they can do.","ClientExcludedOppty":"Choice of a user to exclude an opportunity from their forecast and quota calculations, or to include it again.","ClientFavorite":"Record or screen profile that a user has marked as a favorite.","ClientSetting":"Personal setting of a user, stored as a named value.","ClientStoryRead":"Mark that a user has read an activity, email or memo in their feed, and whether they chose not to follow up on it.","CloudObject":"File stored in the space, such as a document, image or recording, that can be attached to records.","CloudObjectFolder":"Folder that organizes files, either in the company documents or within a record.","CloudObjectRelation":"Attachment of a file to a record, such as an account, contact, opportunity, activity or email template, optionally in a folder of that record.","CloudObjectStepRelation":"File attached to a pipeline step, such as a document the sales team uses in that step.","CloudObjectTemplate":"Document template, such as a Word or Excel file with placeholders, used to generate documents filled with record data.","CompanyEmail":"Shared company mailbox connected to the space that users can send emails from, such as a sales or support address.","Contact":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","ContactAccountRelation":"Link between a contact and an account they work for, with their position and their place in the account org chart.","ContactAccountAccountRoleRelation":"Role assigned to a contact at an account, on the link between the contact and the account.","ContactRelation":"Link between two related contacts, such as colleagues or family members; its labels give the kind of relationship.","ContactRelationType":"Kind of relationship that can be assigned to a link between two contacts, such as Spouse or Colleague, with its display color.","ContactKPI":"Recorded KPI event of a contact, such as its creation, archiving or the first and last email sent, used in KPI reports.","ContactSharingClientRelation":"Sharing of a contact with a user, as a watcher or an editor.","ContactSharingSalesUnitRelation":"Sharing of a contact with a sales unit, as a watcher or an editor.","ContactSocialRelation":"Social network profiles of a contact, such as their LinkedIn, Twitter or Facebook profiles.","ContactType":"Configurable category of contacts that defines the form layout and settings used for contacts of that type.","CountryCrm":"Country offered in address fields; a new country value on a record must match one of these countries.","Currency":"Currency used for monetary values in the space, converted from the base currency by exchange rates.","CurrencyExchangeRate":"Exchange rate of a currency against the base currency within an exchange rate list.","CurrencyExchangeRatesList":"Set of exchange rates, one per currency, that applies from a given date until the next list takes effect.","CustomEntityRelation":"Custom relation that links records of two entities through a pair of relation fields, one on each side.","CustomEntityRelationData":"Link between two records made through a custom relation, such as an account linked to a custom entity record.","CustomEntity":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","CustomEntityDataExRelation":"Option selected in a multi-select checkbox field of a custom entity record; there is one link per selected option.","CustomEntityKPI":"Recorded KPI event of a custom entity record, such as its creation or last modification, used in KPI reports.","CustomEntitySharingClientRelation":"Sharing of a custom entity record with a user, as a watcher or an editor.","CustomEntitySharingSalesUnitRelation":"Sharing of a custom entity record with a sales unit, as a watcher or an editor.","CustomEntityType":"Configurable category of records of a custom entity that defines their form layout and settings; entityApiName names the custom entity.","Data":"Option of a dropdown or multi-select field, one of the values users can choose from.","Ebook":"E-book offered to users in the in-app learning content, with view statistics.","Email":"Email message sent or received by users of the space, linked to the contacts, accounts and other records it concerns.","EmailLabel":"Personal label a user applies to email conversations to organize their mailbox; labels can be nested.","EmailLabelRelation":"Email label applied to a conversation in a mailbox.","EmailMailboxRelation":"Link between an email and a mailbox the email belongs to.","EmailSequence":"Automated series of emails sent step by step to the records enrolled in it, with rules for when to send and when to stop.","EmailSequenceActivityLog":"Log of one run of an email sequence, with when it started and finished and who triggered it.","EmailSequenceActivityLogLine":"Entry in the log of an email sequence run, recording one step and its outcome.","EmailSequenceEnrolled":"Record enrolled in an email sequence, such as a contact, lead or opportunity, with the run that enrolled it.","EmailSequenceEnrolledStatus":"Progress of an enrolled record through one step of an email sequence, with the email, text message or task the step produced.","EmailSequenceSettings":"Copy of an email sequence's steps and rules taken when records are enrolled, so later edits to the sequence do not affect runs already in progress.","EmailTemplate":"Reusable email whose body can contain placeholders filled with record values; templates are organized in folders and can be shared.","EmailTemplateFolder":"Folder that organizes email templates; folders can be nested.","EmailTemplateSharingClientRelation":"Sharing of an email template with a user, as a watcher or an editor.","EmailTemplateSharingSalesUnitRelation":"Sharing of an email template with a sales unit, as a watcher or an editor.","EmailContentSharingClientRelation":"Sharing of the body of an email with a user, letting them read its content.","EmailContentSharingSalesUnitRelation":"Sharing of the body of an email with a sales unit, letting its members read its content.","EmailThreadMailboxClientReadState":"Time a user last read an email conversation in a mailbox, telling which conversations have unread emails.","Entity":"Kind of record in the space, such as Account, Lead or a custom entity, with its display names and behavior.","EntityHealth":"Health configuration of an account type, defining when accounts of that type are healthy or in critical health.","EntityScoring":"Lead scoring configuration: rules that give leads a score, so that the most promising ones stand out.","EntityHealthSettingsHistory":"Version of the health configuration of an account type, recorded each time the configuration changes.","EntityFitness":"Fitness configuration of a lead or opportunity type: the indicators that flag records of that type needing attention.","EntityFitnessIndicator":"Indicator of a fitness configuration: a rule that flags lead or opportunity records needing attention and suggests how to fix them.","EntityType":"Record type of an entity, such as an account, lead or task type, that classifies records and defines their form.","EntitySettings":"Space-wide settings of an entity, such as the default columns of its lists.","Field":"Field of an entity, built-in or custom, with its name, type and configuration.","FieldMapping":"Rules for copying field values from a source record to a new target record, for example when a lead is qualified into an opportunity.","FieldSequence":"Numbering pattern of an auto-number field, used to generate its values for records that match the filter of the sequence.","FieldPermission":"Access a user role has to a custom field: full access, read-only or hidden.","Forecast":"Sales forecast that sums an amount over the opportunities of a pipeline for a period, broken down by levels such as sales units and users.","ForecastSharingClientRelation":"Share of a forecast with an individual user.","ForecastSharingSalesUnitRelation":"Share of a forecast with a sales unit.","GhostContact":"Placeholder person on an org chart for someone who is not a contact in the space yet, such as an unknown decision maker.","GhostLeadOpptyContactRelation":"Placement of a ghost contact on the org chart of a lead or an opportunity.","GhostContactAccountRelation":"Placement of a ghost contact on the org chart of an account, with its position and comment.","GhostLeadOpptyContactSalesRoleRelation":"Sales role assigned to a placeholder (ghost) contact on the org chart of a lead or opportunity.","GhostContactAccountAccountRoleRelation":"Role assigned to a ghost contact on the org chart of an account.","ImportMappingMask":"Saved mapping of import file columns to fields, reused when importing records of the same entity.","Lead":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","LeadOppty":"Lead or opportunity, with the fields both kinds of sales records share.","LeadOpptyAccountRelation":"Link between a lead or opportunity and an account, marking the primary account.","LeadOpptyContactGroupRelation":"Group of contacts on the org chart of a lead or opportunity.","LeadOpptyContactRelation":"Link between a lead or opportunity and a contact, with the contact's sales roles and org-chart position.","LeadOpptyContactSalesRoleRelation":"Sales role assigned to a contact on a lead or opportunity.","LeadOpptyKPI":"KPI event of a lead or opportunity (e.g. created, qualified, won, lost or moved to another step), used in activity reporting.","LeadOpptyProjectRelation":"Link between a lead or opportunity and a project it is part of.","LeadOpptySharingClientRelation":"Share of a lead or opportunity with an individual user, with the access level granted.","LeadOpptySharingSalesUnitRelation":"Share of a lead or opportunity with a sales unit, with the access level granted.","LeadOpptyStepCheckListRelation":"Completion of a step checklist item on a lead, opportunity or quote, with the activity, email, note or document that fulfils it.","LeadOpptyType":"Lead type or opportunity type, with the settings both kinds of sales record types share.","LeadProcess":"Lead process: the ordered steps that leads of its lead types move through.","LeadType":"Lead type that classifies leads and defines their forms and the lead process they follow.","MasterRight":"User role in the space that defines which features, records and pipelines its users can access.","Media":"Recording of a call or meeting with its transcription and AI summary, attached to a call, task or appointment.","Memo":"Internal message written by a user and linked to records, which other users can comment on.","MemoComment":"Comment a user wrote on a memo.","Message":"Email or memo, with the fields both kinds of messages share.","MessageRelation":"Link between a message (email or memo) and a record such as an account, contact, lead or opportunity.","MessageSharingClientRelation":"Share of a message (email or memo) with an individual user.","MessageSharingSalesUnitRelation":"Share of a message (email or memo) with a sales unit.","Note":"Note a user wrote on a record such as an account, contact, lead, opportunity, project or quote.","OnlineForm":"Submission (response) of an online form, with the answers and the records it created or updated.","OnlineFormActivityLogLine":"One step logged while processing an online form submission.","OnlineFormDataExRelation":"Option selected in a multi-select checkbox field of an online form submission.","OnlineFormTypeEmailRelation":"Email that sent an online form link to a recipient, with the record it was sent on.","OnlineFormRelation":"Link between an online form submission and a record it created or updated.","OnlineFormType":"Online form definition: the fields and settings of a web form whose submissions create or update records.","OnlineFormStyle":"Visual style (colors, fonts, layout) that can be applied to online forms.","Opportunity":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","OpportunityType":"Opportunity type that classifies opportunities and defines their forms (edit, qualify, won and lost).","OpptyProductRelation":"Product line item on an opportunity or quote, with its quantity, price and discount.","OpptyProductRelationDataExRelation":"Option selected in a multi-select checkbox field of a product line item.","OpptyProductRelationType":"Line-item type that defines the form of product line items on opportunities and quotes; paired with a product type.","OpptyRecurrence":"Recurrence rule that creates new copies of an opportunity on a schedule, e.g. for repeat deals once it is won or lost.","OpptyRevenueSchedule":"Revenue schedule that splits the value of an opportunity into periods.","OpptyRevenueSchedulePeriod":"One period of an opportunity revenue schedule, with its date and amount.","OpptyProductRelationRevenueSchedule":"Revenue schedule that splits the amount of a product line item into periods.","OpptyProductRelationRevenueSchedulePeriod":"One period of a product line item revenue schedule, with its date and amount.","Order":"Order of a subscription (e.g. a purchase, renewal or license change) with its items, amounts, tax and payment status.","OrderItem":"Line item of an order: a product with its quantity, price and subtotal, and the monthly recurring revenue it adds.","OrderTempDataItem":"Line item of an order that waits for online payment in checkout, with its product, quantity and price.","OrderHistory":"Status change recorded in the history of an order.","OrderRelatedDocument":"Payment confirmation or credit note issued for an order.","OrderTempData":"Order started in checkout that waits for online payment; it becomes a regular order once the payment succeeds.","Payment":"Payment received for an order, with the payment method, the amount paid and the transaction reference.","PaymentTerm":"Payment term of orders, such as immediate payment or payment within a number of days, in a given language.","PaymentAdditionalData":"Instructions given at checkout that are carried out once the order is paid, such as the invoice recipients, new subscription admins and the users to invite after a space reset.","ParentAccountRelationType":"Kind of parent-child relationship between accounts (e.g. parent company and subsidiary), with a label for each side.","Phone":"Phone number connected to Coevera for calls, text messages or WhatsApp, either personal to a user or shared by the company.","AllowedQuoteType":"Quote type that a user role is allowed to use.","Quote":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","QuoteAccountRelation":"Link between a quote and an account, marking the primary account.","QuoteContactRelation":"Link between a quote and a contact, marking the primary contact.","QuoteDataExRelation":"Option selected in a multi-select checkbox field of a quote.","QuoteKPI":"KPI event of a quote (e.g. created, accepted, archived or moved to another step), used in activity reporting.","QuoteProcess":"Quote process: the ordered steps that quotes of its quote types move through.","QuoteSharingClientRelation":"Share of a quote with an individual user, with the access level granted.","QuoteSharingSalesUnitRelation":"Share of a quote with a sales unit, with the access level granted.","QuoteType":"Quote type that classifies quotes and defines their forms and the quote process they follow.","LeadOpptyDataExRelation":"Option selected in a multi-select checkbox field of a lead or opportunity.","AccountDataExRelation":"Option selected in a multi-select checkbox field of an account; there is one link per selected option.","ContactDataExRelation":"Option selected in a multi-select checkbox field of a contact; there is one link per selected option.","ActivityDataExRelation":"Option selected in a multi-select checkbox field of a task or an appointment; there is one link per selected option.","ProductDataExRelation":"Option selected in a multi-select checkbox field of a product.","ProjectDataExRelation":"Option selected in a multi-select checkbox field of a project.","Pipeline":"Sales pipeline: the ordered steps that opportunities of its opportunity types move through.","Process":"Automatizer process: an automated workflow that runs its actions when its trigger fires (a record event, a schedule or a webhook).","ProcessActivityLog":"One run of an Automatizer process, with its status, timing and the steps it took.","ProcessActivityLogLine":"One step logged in a run of an Automatizer process.","ProcessScheduledAction":"Action of an Automatizer process that is waiting to run for a record at a scheduled time.","ProcessTemplate":"Ready-made Automatizer process offered in the template gallery as a starting point for new processes.","Solution":"Canvas that groups related automation tools (Automatizer processes, email sequences, online forms) and tracks their status and activity.","SolutionTemplate":"Ready-made solution offered in the template gallery as a starting point for new solutions.","ProcessChangeOwnerLog":"Round-robin progress of an Automatizer change-owner action, recording which users have already been assigned a record so the next record goes to the next user.","Product":"Product or service in the catalog that can be added as a line item to opportunities and quotes.","ProductType":"Product type that classifies products and defines their form.","ProductCategory":"Category in the hierarchy of the product catalog.","ProductPipelineRelation":"Pipeline in which a product can be added as a line item.","ProductPriceList":"Price list with product prices per currency, applied to opportunities and quotes while it is active.","ProductPriceListPrice":"Price of a product in one currency within a price list.","Profile":"Saved view of an app screen (e.g. leads, accounts or opportunities) with its filter, layout and charts, optionally shared with others.","ProfileRelation":"Record added explicitly to a static saved view (profile).","ProfileDraft":"Unsaved changes a user made to the view of an app screen, kept until they are saved or discarded.","ProfileSharingClientRelation":"Share of a saved view (profile) with an individual user.","ProfileSharingSalesUnitRelation":"Share of a saved view (profile) with a sales unit.","Project":"Project delivered for an account or run internally, with its objectives, activities and progress.","ProjectKPI":"KPI event of a project (its completion), used in activity reporting.","ProjectContactRelation":"Link between a project and a contact, marking the primary contact.","ProjectObjective":"Objective (goal) of a project.","ProjectType":"Project type that classifies projects and defines their form and icon.","ProjectSharingClientRelation":"Share of a project with an individual user, with the access level granted.","ProjectSharingSalesUnitRelation":"Share of a project with a sales unit, with the access level granted.","Report":"Saved report or dashboard with its settings, sharing and delivery schedule.","ReportFolder":"Folder that organizes reports; folders can be nested.","ReportSharingClientRelation":"Share of a report with an individual user, with the access level granted.","ReportSharingSalesUnitRelation":"Share of a report with a sales unit, with the access level granted.","ReportSchedule":"Schedule that emails a report to its recipients at regular intervals.","RevenueRecognition":"Revenue of an opportunity product for one period of its revenue schedule, used in revenue reporting.","SalesRole":"Role a contact plays in a deal (e.g. decision maker), assigned to contacts on leads and opportunities.","SalesUnit":"Sales unit (team) in the organization hierarchy that users belong to.","SalesUnitClientRelation":"Membership of a user in a sales unit, as a member or manager.","Step":"Step of an opportunity pipeline, lead process or quote process that records move through.","StepChecklist":"Checklist item of a pipeline step, such as logging an activity, filling a field or attaching a document.","StepChecklistSalesRoleRelation":"Sales role that a step checklist item is shown to.","Tag":"Label that users attach to records such as accounts, contacts or opportunities to categorize them.","TagRelation":"Assignment of a tag to a record.","Target":"Sales target set for a user or a group of users for a period, measured by a chosen metric.","TargetRelation":"Link between a group target and a user target that rolls up into it.","Task":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","TaskRecurrence":"Recurrence rule that defines when the next occurrences of a recurring task are created.","TaskReminder":"Reminder a user set to be notified about a task at a given time.","TaskSharingClientRelation":"Share of a task with an individual user, with the access level granted.","TaskSharingSalesUnitRelation":"Share of a task with a sales unit, with the access level granted.","TaskType":"Task type that classifies tasks and defines their form and icon.","TextMessage":"Message sent or received in a text message conversation or in an AI assistant chat.","TextMessageConversation":"Text message conversation between a Coevera phone number and an external phone number.","TextMessageConversationRelations":"Link between a text message conversation and a record such as an account, contact, lead or opportunity.","Translation":"Translation of a field name, dropdown option or form text into the supported languages.","Type":"Data type of fields, defining the kind of value, its validation and whether fields of the type can be filtered, sorted or grouped.","Timeframe":"Time a lead or opportunity has spent in a pipeline step.","UnsubscribedPhone":"Phone number that opted out of receiving text messages.","UseCase":"Use case showing how a feature can be used, offered to users in the in-app learning content.","Webresource":"Web page embedded in the app for records of an entity, with its URL filled from the record's field values.","Webhook":"Registered webhook urls will be called when subscribed events occur with access level corresponding to the Webhook owner.","WebhookEvent":"Event a webhook subscribes to; the webhook is called whenever the event occurs.","Country":"Country that can be selected in billing addresses, with its states, sales region and the Coevera supplier that bills customers there.","TeamSpaceClient":"Membership of a user profile in a space.","CpTeamSpaceClient":"Membership of a user in a space, as listed for subscription administrators, who can disable it.","CpCallLog":"Call, text message or transcription made through built-in calling, with its phone numbers, status and cost.","UserProfile":"User account that signs in to Coevera and can be a member of several spaces and subscriptions.","UserRole":"Customer portal role that grants a user rights such as order, subscription, partner and user management.","TeamSpace":"Space of a subscription: a separate Coevera CRM instance with its own users, data and settings.","TeamSpaceRegion":"Hosting region where spaces run, with its address, email domain and whether new trial spaces can be created in it.","TeamSpaceProperty":"Named property of a space, such as its time zone, first day of the week or attachment size limit.","TeamSpaceClientSetting":"Integration settings of a user in a space, such as the connected mailbox and the contact, calendar and task sync with Google, Microsoft 365 or Exchange.","SapiUser":"API user that signs in with a user name and password, as a standard or administrator API user, optionally limited to one space and to allowed source IP addresses.","CpCalling":"Calling credit of a subscription, spent on calls, recordings and AI services such as transcription.","Subscription":"Customer subscription to Coevera: the contract that covers its spaces, licenses, billing and orders.","SubscriptionRepresentative":"Coevera staff member who can be assigned to subscriptions as their sales representative.","SubscriptionSDR":"Coevera staff member who can be assigned to subscriptions as their sales development representative.","Partner":"Partner company (e.g. affiliate, agent or consultant) that refers customer subscriptions and earns commission on their orders.","Supplier":"Company that sells subscriptions and issues orders and invoices, with its legal imprint.","State":"State or province of a country that can be selected in billing addresses.","AutomationHubApp":"App (vendor) in the Automation Hub that provides integrations, with its website and support links.","AutomationHubCategory":"Category that groups items in the Automation Hub.","AutomationHubItem":"Integration or add-on offered in the Automation Hub that can be enabled in a space.","SubscriptionHubItem":"Automation Hub item included in a subscription.","TeamPipelineHubItem":"Automation Hub item installed in a space, with its status and configuration.","TeamPipelineHubItemBase":"Automation Hub item installed in a space, of any integration kind, with its status and configuration.","HowTo":"Help resource (video, article or support link) shown in the app for a feature area, with view statistics.","Storylane":"Interactive product demo offered to users in the in-app learning content.","ReleaseNote":"Release note announcing a product change to users, who can react to it.","CpClient":"User account identified by its sign-in email, with the spaces it is a member of.","CpProfile":"Saved view of a customer portal screen that belongs to a Coevera staff member, with its view settings.","CpProduct":"Product of the Coevera catalog that subscriptions can purchase, such as licenses or add-ons, with its prices in EUR, USD and GBP and its renewal terms.","PurchasedProduct":"Product a subscription has purchased, such as licenses or an add-on, with its quantity, price, status and the period it is active.","SubscriptionNotification":"Notification email sent to the recipients of a subscription under a notification setting, such as a renewal reminder or an overdue payment notice for an order.","CpActivity":"Entry of the customer portal audit trail: an action a user performed, the module it was performed in and the space it concerned.","ActivityDetail":"Detail of a customer portal audit trail entry: the record that was changed, the operation performed and the data before and after the change.","NotificationSetting":"Automatic email notification to customers, sent before a subscription renewal or when an order payment is overdue.","FormView":"Variant of the form of an account, contact, lead or opportunity type that hides or colors selected fields; owned by a user and can be shared.","FormViewSharingClientRelation":"Sharing of a form view with a user, as a watcher or an editor.","FormViewSharingSalesUnitRelation":"Sharing of a form view with a sales unit, as a watcher or an editor.","InterfacePreview":"Layout of how records of an entity type are previewed in the app: preview and card fields, detail tabs, widgets and charts.","SpaceSetting":"Space-wide setting stored as a named value, such as the working days, custom entity names or the revenue schedule configuration."}},"type":{"type":"integer","description":"Where the template file is stored: S3File for a file uploaded to Coevera storage (the default) or GoogleDriveFile for a Google Drive document. Set on create only.\n\nInteger enum value: -1 - S3FileUpload, 1 - S3File, 2 - S3Image, 3 - GoogleDriveFile, 4 - OneDriveFile, 5 - BoxFile, 6 - DropboxFile, 7 - SharepointFile, 8 - ExternalURL, 9 - AlfrescoFile, 10 - UrlFile","example":-1,"enum":[-1,1,2,3,4,5,6,7,8,9,10],"readOnly":true,"x-enumDescriptions":{"1":"File stored in Coevera storage; content can be sent directly or is downloaded from url.","2":"Image stored in Coevera storage, such as a record picture or product image.","3":"File linked from Google Drive.","4":"File linked from OneDrive.","5":"File linked from Box.","6":"File linked from Dropbox.","7":"File linked from SharePoint.","8":"Link to an external web page or resource.","9":"File linked from Alfresco.","10":"File referenced by a direct download URL.","-1":"Use on create when url points to a file already uploaded to Coevera storage; the object is then saved as S3File."}},"upload_source":{"type":"integer","description":"Editor the uploaded image is embedded in, such as an email template or rich-text content. Empty for files that are not embedded images.\n\nInteger enum value: 1 - EmailTemplate, 2 - RichTextEditor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Image embedded in an email template.","2":"Image embedded in rich-text content, such as a note or description."}},"url":{"type":"string","example":"string","description":"URL of the object. If URL scheme is not defined \"http://\" is automatically prepended to supplied URL.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"template_entity_api_name":{"type":"string","example":"string","description":"API name of the custom entity the template renders. Set only when template_entity_name is \"CustomEntity\"; otherwise empty."}},"required":["is_delete_protected","id","filename","size","template_entity_name","type"]},"createCloudObjectTemplateInput":{"description":"Field values of a new CloudObjectTemplate record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the producing application."},"company_cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company folder, or empty when the object is not stored in the company tree."},"creator_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the uploading user."},"filename":{"type":"string","example":"string","description":"File name (with extension) used when downloading the object."},"is_public":{"type":"boolean","example":false,"description":"When true, the object can be served via a public URL (see public_url)."},"status":{"type":"integer","description":"Whether the document template is active and offered for generating documents, or inactive and kept for later use. Defaults to Active.\n\nInteger enum value: 1 - Active, 2 - Inactive","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Template is available for generating documents.","2":"Template is kept but not offered for generating documents."}},"template_entity_name":{"type":"string","example":"Account","enum":["Account","AccountDataExRelation","AccountKPI","AccountProductPricing","AccountRole","AccountSharingClientRelation","AccountSharingSalesUnitRelation","AccountSocialRelation","AccountType","Activity","ActivityComment","ActivityDataExRelation","ActivityDetail","ActivityKPI","ActivityRelation","ActivityType","AiAgent","AiBalance","AiEvent","AiEventJournal","AllowedAccountType","AllowedAppointmentType","AllowedCompanyPhone","AllowedContactType","AllowedLeadType","AllowedPipeline","AllowedQuoteType","AllowedTaskType","ApiAccess","Application","Appointment","AppointmentClientInviteesRelation","AppointmentContactInviteesRelation","AppointmentInviteeNotifyQueue","AppointmentReminder","AppointmentSchedule","AppointmentType","Approval","ApprovalApprover","ApprovalProcess","ApprovalProcessActivityLogLine","AuditLog","AutomationHubApp","AutomationHubCategory","AutomationHubItem","ChatConversation","Client","ClientExcludedOppty","ClientFavorite","ClientSetting","ClientStoryRead","CloudObject","CloudObjectFolder","CloudObjectRelation","CloudObjectStepRelation","CloudObjectTemplate","CompanyEmail","Contact","ContactAccountAccountRoleRelation","ContactAccountRelation","ContactDataExRelation","ContactKPI","ContactRelation","ContactRelationType","ContactSharingClientRelation","ContactSharingSalesUnitRelation","ContactSocialRelation","ContactType","Country","CountryCrm","CpActivity","CpCallLog","CpCalling","CpClient","CpProduct","CpProfile","CpTeamSpaceClient","Currency","CurrencyExchangeRate","CurrencyExchangeRatesList","CustomEntity","CustomEntityDataExRelation","CustomEntityKPI","CustomEntityRelation","CustomEntityRelationData","CustomEntitySharingClientRelation","CustomEntitySharingSalesUnitRelation","CustomEntityType","Data","Ebook","Email","EmailContentSharingClientRelation","EmailContentSharingSalesUnitRelation","EmailLabel","EmailLabelRelation","EmailMailboxRelation","EmailSequence","EmailSequenceActivityLog","EmailSequenceActivityLogLine","EmailSequenceEnrolled","EmailSequenceEnrolledStatus","EmailSequenceSettings","EmailTemplate","EmailTemplateFolder","EmailTemplateSharingClientRelation","EmailTemplateSharingSalesUnitRelation","EmailThreadMailboxClientReadState","Entity","EntityFitness","EntityFitnessIndicator","EntityHealth","EntityHealthSettingsHistory","EntityScoring","EntitySettings","EntityType","Field","FieldMapping","FieldPermission","FieldSequence","Forecast","ForecastSharingClientRelation","ForecastSharingSalesUnitRelation","FormView","FormViewSharingClientRelation","FormViewSharingSalesUnitRelation","GhostContact","GhostContactAccountAccountRoleRelation","GhostContactAccountRelation","GhostLeadOpptyContactRelation","GhostLeadOpptyContactSalesRoleRelation","HowTo","ImportMappingMask","InterfacePreview","Lead","LeadOppty","LeadOpptyAccountRelation","LeadOpptyContactGroupRelation","LeadOpptyContactRelation","LeadOpptyContactSalesRoleRelation","LeadOpptyDataExRelation","LeadOpptyKPI","LeadOpptyProjectRelation","LeadOpptySharingClientRelation","LeadOpptySharingSalesUnitRelation","LeadOpptyStepCheckListRelation","LeadOpptyType","LeadProcess","LeadType","MasterRight","Media","Memo","MemoComment","Message","MessageRelation","MessageSharingClientRelation","MessageSharingSalesUnitRelation","Note","NotificationSetting","OnlineForm","OnlineFormActivityLogLine","OnlineFormDataExRelation","OnlineFormRelation","OnlineFormStyle","OnlineFormType","OnlineFormTypeEmailRelation","Opportunity","OpportunityType","OpptyProductRelation","OpptyProductRelationDataExRelation","OpptyProductRelationRevenueSchedule","OpptyProductRelationRevenueSchedulePeriod","OpptyProductRelationType","OpptyRecurrence","OpptyRevenueSchedule","OpptyRevenueSchedulePeriod","Order","OrderHistory","OrderItem","OrderRelatedDocument","OrderTempData","OrderTempDataItem","ParentAccountRelationType","Partner","Payment","PaymentAdditionalData","PaymentTerm","Phone","Pipeline","Process","ProcessActivityLog","ProcessActivityLogLine","ProcessChangeOwnerLog","ProcessScheduledAction","ProcessTemplate","Product","ProductCategory","ProductDataExRelation","ProductPipelineRelation","ProductPriceList","ProductPriceListPrice","ProductType","Profile","ProfileDraft","ProfileRelation","ProfileSharingClientRelation","ProfileSharingSalesUnitRelation","Project","ProjectContactRelation","ProjectDataExRelation","ProjectKPI","ProjectObjective","ProjectSharingClientRelation","ProjectSharingSalesUnitRelation","ProjectType","PurchasedProduct","Quote","QuoteAccountRelation","QuoteContactRelation","QuoteDataExRelation","QuoteKPI","QuoteProcess","QuoteSharingClientRelation","QuoteSharingSalesUnitRelation","QuoteType","ReleaseNote","Report","ReportFolder","ReportSchedule","ReportSharingClientRelation","ReportSharingSalesUnitRelation","RevenueRecognition","SalesRole","SalesUnit","SalesUnitClientRelation","SapiUser","Solution","SolutionTemplate","SpaceSetting","State","Step","StepChecklist","StepChecklistSalesRoleRelation","Storylane","Subscription","SubscriptionHubItem","SubscriptionNotification","SubscriptionRepresentative","SubscriptionSDR","Supplier","Tag","TagRelation","Target","TargetRelation","Task","TaskRecurrence","TaskReminder","TaskSharingClientRelation","TaskSharingSalesUnitRelation","TaskType","TeamPipelineHubItem","TeamPipelineHubItemBase","TeamSpace","TeamSpaceClient","TeamSpaceClientSetting","TeamSpaceProperty","TeamSpaceRegion","TextMessage","TextMessageConversation","TextMessageConversationRelations","Timeframe","Translation","Type","UnsubscribedPhone","UseCase","UserProfile","UserRole","Webhook","WebhookEvent","Webresource"],"description":"Entity type the template renders (e.g. Account, Opportunity, Quote). For custom entities, the value is \"CustomEntity\" and the API name is exposed via template_entity_api_name.","x-enumDescriptions":{"AiAgent":"AI agent offered in the Automation Hub, such as an AI assistant integration, whose use is recorded as AI events.","AiBalance":"AI credit balance of a subscription for a period, with the free credits remaining and spent and the overage credits used.","AiEvent":"Use of an AI agent by a user in a space, with its outcome, response time and the AI credits it consumed.","AiEventJournal":"Single AI model call made while handling an AI event, with the model used, its response time and cost.","AuditLog":"Entry of the space audit log recording an administrative action, such as a data export, a user invitation or a sales unit change, and who performed it.","Account":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","AccountKPI":"Recorded KPI event of an account, such as its creation, archiving or the first and last email sent, used in KPI reports.","AccountRole":"Role a contact can hold at an account, configurable per space and assigned on the link between the contact and the account.","AccountSharingClientRelation":"Sharing of an account with a user, as a watcher or an editor.","AccountSharingSalesUnitRelation":"Sharing of an account with a sales unit, as a watcher or an editor.","AccountSocialRelation":"Social network profiles of an account, such as its LinkedIn, Twitter or Facebook pages.","AccountProductPricing":"Special price of a product for one account, used instead of the regular price when the product is sold to that account.","AccountType":"Configurable category of accounts that defines the form layout and settings used for accounts of that type.","Activity":"Task or appointment: the common view of the to-dos and meetings of the sales team, linked to the records they concern.","ActivityComment":"Comment written by a user on a task or an appointment.","ActivityKPI":"Recorded KPI event of a task or an appointment, such as its creation or completion, used in KPI reports.","ActivityRelation":"Link of a task or an appointment to a record it concerns, such as an account, contact, lead, opportunity, project or quote.","ActivityType":"Task type or appointment type, with the settings both kinds of activity types share.","AllowedLeadType":"Lead type that a user role is allowed to use.","AllowedPipeline":"Pipeline that a user role is allowed to use, optionally with access to the documents of its steps.","ApiAccess":"API credentials that an integration uses to access the space, with the parts of the API they may read or write.","Application":"Application that works with the space, such as the web or mobile app, an Automation Hub integration or an API access; changes and events are attributed to it.","Appointment":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","AppointmentClientInviteesRelation":"Invitation of a user of the space to an appointment, with their response.","AppointmentContactInviteesRelation":"Invitation of an external person to an appointment, identified by email and matched to a contact when one exists, with their response.","AppointmentInviteeNotifyQueue":"Invitation email for an appointment that is waiting to be sent to an invitee's email address.","AppointmentReminder":"Reminder a user has set for an appointment, notifying them a given time before it starts.","AppointmentSchedule":"Online booking link through which people book appointments with a user in the time slots the user has available.","AppointmentType":"Configurable category of appointments, such as a meeting or a call, that defines their form layout and icon.","AllowedAccountType":"Account type that a user role is allowed to use.","AllowedAppointmentType":"Appointment type that a user role is allowed to use.","AllowedContactType":"Contact type that a user role is allowed to use.","AllowedCompanyPhone":"Company phone number that a user role is allowed to use for calls and text messages.","AllowedTaskType":"Task type that a user role is allowed to use.","Approval":"Approval request that an approval process raised for a record, such as a quote or an opportunity, waiting for the decision of its approvers.","ApprovalApprover":"User asked to decide an approval request, with their response and comment.","ApprovalProcess":"Approval rule that raises approval requests for records of an entity when its trigger conditions are met, and defines who approves them.","ApprovalProcessActivityLogLine":"Entry in the activity log of an approval, recording one step of the approval and its result.","ChatConversation":"Conversation of a user with the AI assistant, either general or about a specific record.","Client":"User of the space; owns records, belongs to sales units and has a user role that determines what they can do.","ClientExcludedOppty":"Choice of a user to exclude an opportunity from their forecast and quota calculations, or to include it again.","ClientFavorite":"Record or screen profile that a user has marked as a favorite.","ClientSetting":"Personal setting of a user, stored as a named value.","ClientStoryRead":"Mark that a user has read an activity, email or memo in their feed, and whether they chose not to follow up on it.","CloudObject":"File stored in the space, such as a document, image or recording, that can be attached to records.","CloudObjectFolder":"Folder that organizes files, either in the company documents or within a record.","CloudObjectRelation":"Attachment of a file to a record, such as an account, contact, opportunity, activity or email template, optionally in a folder of that record.","CloudObjectStepRelation":"File attached to a pipeline step, such as a document the sales team uses in that step.","CloudObjectTemplate":"Document template, such as a Word or Excel file with placeholders, used to generate documents filled with record data.","CompanyEmail":"Shared company mailbox connected to the space that users can send emails from, such as a sales or support address.","Contact":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","ContactAccountRelation":"Link between a contact and an account they work for, with their position and their place in the account org chart.","ContactAccountAccountRoleRelation":"Role assigned to a contact at an account, on the link between the contact and the account.","ContactRelation":"Link between two related contacts, such as colleagues or family members; its labels give the kind of relationship.","ContactRelationType":"Kind of relationship that can be assigned to a link between two contacts, such as Spouse or Colleague, with its display color.","ContactKPI":"Recorded KPI event of a contact, such as its creation, archiving or the first and last email sent, used in KPI reports.","ContactSharingClientRelation":"Sharing of a contact with a user, as a watcher or an editor.","ContactSharingSalesUnitRelation":"Sharing of a contact with a sales unit, as a watcher or an editor.","ContactSocialRelation":"Social network profiles of a contact, such as their LinkedIn, Twitter or Facebook profiles.","ContactType":"Configurable category of contacts that defines the form layout and settings used for contacts of that type.","CountryCrm":"Country offered in address fields; a new country value on a record must match one of these countries.","Currency":"Currency used for monetary values in the space, converted from the base currency by exchange rates.","CurrencyExchangeRate":"Exchange rate of a currency against the base currency within an exchange rate list.","CurrencyExchangeRatesList":"Set of exchange rates, one per currency, that applies from a given date until the next list takes effect.","CustomEntityRelation":"Custom relation that links records of two entities through a pair of relation fields, one on each side.","CustomEntityRelationData":"Link between two records made through a custom relation, such as an account linked to a custom entity record.","CustomEntity":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","CustomEntityDataExRelation":"Option selected in a multi-select checkbox field of a custom entity record; there is one link per selected option.","CustomEntityKPI":"Recorded KPI event of a custom entity record, such as its creation or last modification, used in KPI reports.","CustomEntitySharingClientRelation":"Sharing of a custom entity record with a user, as a watcher or an editor.","CustomEntitySharingSalesUnitRelation":"Sharing of a custom entity record with a sales unit, as a watcher or an editor.","CustomEntityType":"Configurable category of records of a custom entity that defines their form layout and settings; entityApiName names the custom entity.","Data":"Option of a dropdown or multi-select field, one of the values users can choose from.","Ebook":"E-book offered to users in the in-app learning content, with view statistics.","Email":"Email message sent or received by users of the space, linked to the contacts, accounts and other records it concerns.","EmailLabel":"Personal label a user applies to email conversations to organize their mailbox; labels can be nested.","EmailLabelRelation":"Email label applied to a conversation in a mailbox.","EmailMailboxRelation":"Link between an email and a mailbox the email belongs to.","EmailSequence":"Automated series of emails sent step by step to the records enrolled in it, with rules for when to send and when to stop.","EmailSequenceActivityLog":"Log of one run of an email sequence, with when it started and finished and who triggered it.","EmailSequenceActivityLogLine":"Entry in the log of an email sequence run, recording one step and its outcome.","EmailSequenceEnrolled":"Record enrolled in an email sequence, such as a contact, lead or opportunity, with the run that enrolled it.","EmailSequenceEnrolledStatus":"Progress of an enrolled record through one step of an email sequence, with the email, text message or task the step produced.","EmailSequenceSettings":"Copy of an email sequence's steps and rules taken when records are enrolled, so later edits to the sequence do not affect runs already in progress.","EmailTemplate":"Reusable email whose body can contain placeholders filled with record values; templates are organized in folders and can be shared.","EmailTemplateFolder":"Folder that organizes email templates; folders can be nested.","EmailTemplateSharingClientRelation":"Sharing of an email template with a user, as a watcher or an editor.","EmailTemplateSharingSalesUnitRelation":"Sharing of an email template with a sales unit, as a watcher or an editor.","EmailContentSharingClientRelation":"Sharing of the body of an email with a user, letting them read its content.","EmailContentSharingSalesUnitRelation":"Sharing of the body of an email with a sales unit, letting its members read its content.","EmailThreadMailboxClientReadState":"Time a user last read an email conversation in a mailbox, telling which conversations have unread emails.","Entity":"Kind of record in the space, such as Account, Lead or a custom entity, with its display names and behavior.","EntityHealth":"Health configuration of an account type, defining when accounts of that type are healthy or in critical health.","EntityScoring":"Lead scoring configuration: rules that give leads a score, so that the most promising ones stand out.","EntityHealthSettingsHistory":"Version of the health configuration of an account type, recorded each time the configuration changes.","EntityFitness":"Fitness configuration of a lead or opportunity type: the indicators that flag records of that type needing attention.","EntityFitnessIndicator":"Indicator of a fitness configuration: a rule that flags lead or opportunity records needing attention and suggests how to fix them.","EntityType":"Record type of an entity, such as an account, lead or task type, that classifies records and defines their form.","EntitySettings":"Space-wide settings of an entity, such as the default columns of its lists.","Field":"Field of an entity, built-in or custom, with its name, type and configuration.","FieldMapping":"Rules for copying field values from a source record to a new target record, for example when a lead is qualified into an opportunity.","FieldSequence":"Numbering pattern of an auto-number field, used to generate its values for records that match the filter of the sequence.","FieldPermission":"Access a user role has to a custom field: full access, read-only or hidden.","Forecast":"Sales forecast that sums an amount over the opportunities of a pipeline for a period, broken down by levels such as sales units and users.","ForecastSharingClientRelation":"Share of a forecast with an individual user.","ForecastSharingSalesUnitRelation":"Share of a forecast with a sales unit.","GhostContact":"Placeholder person on an org chart for someone who is not a contact in the space yet, such as an unknown decision maker.","GhostLeadOpptyContactRelation":"Placement of a ghost contact on the org chart of a lead or an opportunity.","GhostContactAccountRelation":"Placement of a ghost contact on the org chart of an account, with its position and comment.","GhostLeadOpptyContactSalesRoleRelation":"Sales role assigned to a placeholder (ghost) contact on the org chart of a lead or opportunity.","GhostContactAccountAccountRoleRelation":"Role assigned to a ghost contact on the org chart of an account.","ImportMappingMask":"Saved mapping of import file columns to fields, reused when importing records of the same entity.","Lead":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","LeadOppty":"Lead or opportunity, with the fields both kinds of sales records share.","LeadOpptyAccountRelation":"Link between a lead or opportunity and an account, marking the primary account.","LeadOpptyContactGroupRelation":"Group of contacts on the org chart of a lead or opportunity.","LeadOpptyContactRelation":"Link between a lead or opportunity and a contact, with the contact's sales roles and org-chart position.","LeadOpptyContactSalesRoleRelation":"Sales role assigned to a contact on a lead or opportunity.","LeadOpptyKPI":"KPI event of a lead or opportunity (e.g. created, qualified, won, lost or moved to another step), used in activity reporting.","LeadOpptyProjectRelation":"Link between a lead or opportunity and a project it is part of.","LeadOpptySharingClientRelation":"Share of a lead or opportunity with an individual user, with the access level granted.","LeadOpptySharingSalesUnitRelation":"Share of a lead or opportunity with a sales unit, with the access level granted.","LeadOpptyStepCheckListRelation":"Completion of a step checklist item on a lead, opportunity or quote, with the activity, email, note or document that fulfils it.","LeadOpptyType":"Lead type or opportunity type, with the settings both kinds of sales record types share.","LeadProcess":"Lead process: the ordered steps that leads of its lead types move through.","LeadType":"Lead type that classifies leads and defines their forms and the lead process they follow.","MasterRight":"User role in the space that defines which features, records and pipelines its users can access.","Media":"Recording of a call or meeting with its transcription and AI summary, attached to a call, task or appointment.","Memo":"Internal message written by a user and linked to records, which other users can comment on.","MemoComment":"Comment a user wrote on a memo.","Message":"Email or memo, with the fields both kinds of messages share.","MessageRelation":"Link between a message (email or memo) and a record such as an account, contact, lead or opportunity.","MessageSharingClientRelation":"Share of a message (email or memo) with an individual user.","MessageSharingSalesUnitRelation":"Share of a message (email or memo) with a sales unit.","Note":"Note a user wrote on a record such as an account, contact, lead, opportunity, project or quote.","OnlineForm":"Submission (response) of an online form, with the answers and the records it created or updated.","OnlineFormActivityLogLine":"One step logged while processing an online form submission.","OnlineFormDataExRelation":"Option selected in a multi-select checkbox field of an online form submission.","OnlineFormTypeEmailRelation":"Email that sent an online form link to a recipient, with the record it was sent on.","OnlineFormRelation":"Link between an online form submission and a record it created or updated.","OnlineFormType":"Online form definition: the fields and settings of a web form whose submissions create or update records.","OnlineFormStyle":"Visual style (colors, fonts, layout) that can be applied to online forms.","Opportunity":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","OpportunityType":"Opportunity type that classifies opportunities and defines their forms (edit, qualify, won and lost).","OpptyProductRelation":"Product line item on an opportunity or quote, with its quantity, price and discount.","OpptyProductRelationDataExRelation":"Option selected in a multi-select checkbox field of a product line item.","OpptyProductRelationType":"Line-item type that defines the form of product line items on opportunities and quotes; paired with a product type.","OpptyRecurrence":"Recurrence rule that creates new copies of an opportunity on a schedule, e.g. for repeat deals once it is won or lost.","OpptyRevenueSchedule":"Revenue schedule that splits the value of an opportunity into periods.","OpptyRevenueSchedulePeriod":"One period of an opportunity revenue schedule, with its date and amount.","OpptyProductRelationRevenueSchedule":"Revenue schedule that splits the amount of a product line item into periods.","OpptyProductRelationRevenueSchedulePeriod":"One period of a product line item revenue schedule, with its date and amount.","Order":"Order of a subscription (e.g. a purchase, renewal or license change) with its items, amounts, tax and payment status.","OrderItem":"Line item of an order: a product with its quantity, price and subtotal, and the monthly recurring revenue it adds.","OrderTempDataItem":"Line item of an order that waits for online payment in checkout, with its product, quantity and price.","OrderHistory":"Status change recorded in the history of an order.","OrderRelatedDocument":"Payment confirmation or credit note issued for an order.","OrderTempData":"Order started in checkout that waits for online payment; it becomes a regular order once the payment succeeds.","Payment":"Payment received for an order, with the payment method, the amount paid and the transaction reference.","PaymentTerm":"Payment term of orders, such as immediate payment or payment within a number of days, in a given language.","PaymentAdditionalData":"Instructions given at checkout that are carried out once the order is paid, such as the invoice recipients, new subscription admins and the users to invite after a space reset.","ParentAccountRelationType":"Kind of parent-child relationship between accounts (e.g. parent company and subsidiary), with a label for each side.","Phone":"Phone number connected to Coevera for calls, text messages or WhatsApp, either personal to a user or shared by the company.","AllowedQuoteType":"Quote type that a user role is allowed to use.","Quote":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","QuoteAccountRelation":"Link between a quote and an account, marking the primary account.","QuoteContactRelation":"Link between a quote and a contact, marking the primary contact.","QuoteDataExRelation":"Option selected in a multi-select checkbox field of a quote.","QuoteKPI":"KPI event of a quote (e.g. created, accepted, archived or moved to another step), used in activity reporting.","QuoteProcess":"Quote process: the ordered steps that quotes of its quote types move through.","QuoteSharingClientRelation":"Share of a quote with an individual user, with the access level granted.","QuoteSharingSalesUnitRelation":"Share of a quote with a sales unit, with the access level granted.","QuoteType":"Quote type that classifies quotes and defines their forms and the quote process they follow.","LeadOpptyDataExRelation":"Option selected in a multi-select checkbox field of a lead or opportunity.","AccountDataExRelation":"Option selected in a multi-select checkbox field of an account; there is one link per selected option.","ContactDataExRelation":"Option selected in a multi-select checkbox field of a contact; there is one link per selected option.","ActivityDataExRelation":"Option selected in a multi-select checkbox field of a task or an appointment; there is one link per selected option.","ProductDataExRelation":"Option selected in a multi-select checkbox field of a product.","ProjectDataExRelation":"Option selected in a multi-select checkbox field of a project.","Pipeline":"Sales pipeline: the ordered steps that opportunities of its opportunity types move through.","Process":"Automatizer process: an automated workflow that runs its actions when its trigger fires (a record event, a schedule or a webhook).","ProcessActivityLog":"One run of an Automatizer process, with its status, timing and the steps it took.","ProcessActivityLogLine":"One step logged in a run of an Automatizer process.","ProcessScheduledAction":"Action of an Automatizer process that is waiting to run for a record at a scheduled time.","ProcessTemplate":"Ready-made Automatizer process offered in the template gallery as a starting point for new processes.","Solution":"Canvas that groups related automation tools (Automatizer processes, email sequences, online forms) and tracks their status and activity.","SolutionTemplate":"Ready-made solution offered in the template gallery as a starting point for new solutions.","ProcessChangeOwnerLog":"Round-robin progress of an Automatizer change-owner action, recording which users have already been assigned a record so the next record goes to the next user.","Product":"Product or service in the catalog that can be added as a line item to opportunities and quotes.","ProductType":"Product type that classifies products and defines their form.","ProductCategory":"Category in the hierarchy of the product catalog.","ProductPipelineRelation":"Pipeline in which a product can be added as a line item.","ProductPriceList":"Price list with product prices per currency, applied to opportunities and quotes while it is active.","ProductPriceListPrice":"Price of a product in one currency within a price list.","Profile":"Saved view of an app screen (e.g. leads, accounts or opportunities) with its filter, layout and charts, optionally shared with others.","ProfileRelation":"Record added explicitly to a static saved view (profile).","ProfileDraft":"Unsaved changes a user made to the view of an app screen, kept until they are saved or discarded.","ProfileSharingClientRelation":"Share of a saved view (profile) with an individual user.","ProfileSharingSalesUnitRelation":"Share of a saved view (profile) with a sales unit.","Project":"Project delivered for an account or run internally, with its objectives, activities and progress.","ProjectKPI":"KPI event of a project (its completion), used in activity reporting.","ProjectContactRelation":"Link between a project and a contact, marking the primary contact.","ProjectObjective":"Objective (goal) of a project.","ProjectType":"Project type that classifies projects and defines their form and icon.","ProjectSharingClientRelation":"Share of a project with an individual user, with the access level granted.","ProjectSharingSalesUnitRelation":"Share of a project with a sales unit, with the access level granted.","Report":"Saved report or dashboard with its settings, sharing and delivery schedule.","ReportFolder":"Folder that organizes reports; folders can be nested.","ReportSharingClientRelation":"Share of a report with an individual user, with the access level granted.","ReportSharingSalesUnitRelation":"Share of a report with a sales unit, with the access level granted.","ReportSchedule":"Schedule that emails a report to its recipients at regular intervals.","RevenueRecognition":"Revenue of an opportunity product for one period of its revenue schedule, used in revenue reporting.","SalesRole":"Role a contact plays in a deal (e.g. decision maker), assigned to contacts on leads and opportunities.","SalesUnit":"Sales unit (team) in the organization hierarchy that users belong to.","SalesUnitClientRelation":"Membership of a user in a sales unit, as a member or manager.","Step":"Step of an opportunity pipeline, lead process or quote process that records move through.","StepChecklist":"Checklist item of a pipeline step, such as logging an activity, filling a field or attaching a document.","StepChecklistSalesRoleRelation":"Sales role that a step checklist item is shown to.","Tag":"Label that users attach to records such as accounts, contacts or opportunities to categorize them.","TagRelation":"Assignment of a tag to a record.","Target":"Sales target set for a user or a group of users for a period, measured by a chosen metric.","TargetRelation":"Link between a group target and a user target that rolls up into it.","Task":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","TaskRecurrence":"Recurrence rule that defines when the next occurrences of a recurring task are created.","TaskReminder":"Reminder a user set to be notified about a task at a given time.","TaskSharingClientRelation":"Share of a task with an individual user, with the access level granted.","TaskSharingSalesUnitRelation":"Share of a task with a sales unit, with the access level granted.","TaskType":"Task type that classifies tasks and defines their form and icon.","TextMessage":"Message sent or received in a text message conversation or in an AI assistant chat.","TextMessageConversation":"Text message conversation between a Coevera phone number and an external phone number.","TextMessageConversationRelations":"Link between a text message conversation and a record such as an account, contact, lead or opportunity.","Translation":"Translation of a field name, dropdown option or form text into the supported languages.","Type":"Data type of fields, defining the kind of value, its validation and whether fields of the type can be filtered, sorted or grouped.","Timeframe":"Time a lead or opportunity has spent in a pipeline step.","UnsubscribedPhone":"Phone number that opted out of receiving text messages.","UseCase":"Use case showing how a feature can be used, offered to users in the in-app learning content.","Webresource":"Web page embedded in the app for records of an entity, with its URL filled from the record's field values.","Webhook":"Registered webhook urls will be called when subscribed events occur with access level corresponding to the Webhook owner.","WebhookEvent":"Event a webhook subscribes to; the webhook is called whenever the event occurs.","Country":"Country that can be selected in billing addresses, with its states, sales region and the Coevera supplier that bills customers there.","TeamSpaceClient":"Membership of a user profile in a space.","CpTeamSpaceClient":"Membership of a user in a space, as listed for subscription administrators, who can disable it.","CpCallLog":"Call, text message or transcription made through built-in calling, with its phone numbers, status and cost.","UserProfile":"User account that signs in to Coevera and can be a member of several spaces and subscriptions.","UserRole":"Customer portal role that grants a user rights such as order, subscription, partner and user management.","TeamSpace":"Space of a subscription: a separate Coevera CRM instance with its own users, data and settings.","TeamSpaceRegion":"Hosting region where spaces run, with its address, email domain and whether new trial spaces can be created in it.","TeamSpaceProperty":"Named property of a space, such as its time zone, first day of the week or attachment size limit.","TeamSpaceClientSetting":"Integration settings of a user in a space, such as the connected mailbox and the contact, calendar and task sync with Google, Microsoft 365 or Exchange.","SapiUser":"API user that signs in with a user name and password, as a standard or administrator API user, optionally limited to one space and to allowed source IP addresses.","CpCalling":"Calling credit of a subscription, spent on calls, recordings and AI services such as transcription.","Subscription":"Customer subscription to Coevera: the contract that covers its spaces, licenses, billing and orders.","SubscriptionRepresentative":"Coevera staff member who can be assigned to subscriptions as their sales representative.","SubscriptionSDR":"Coevera staff member who can be assigned to subscriptions as their sales development representative.","Partner":"Partner company (e.g. affiliate, agent or consultant) that refers customer subscriptions and earns commission on their orders.","Supplier":"Company that sells subscriptions and issues orders and invoices, with its legal imprint.","State":"State or province of a country that can be selected in billing addresses.","AutomationHubApp":"App (vendor) in the Automation Hub that provides integrations, with its website and support links.","AutomationHubCategory":"Category that groups items in the Automation Hub.","AutomationHubItem":"Integration or add-on offered in the Automation Hub that can be enabled in a space.","SubscriptionHubItem":"Automation Hub item included in a subscription.","TeamPipelineHubItem":"Automation Hub item installed in a space, with its status and configuration.","TeamPipelineHubItemBase":"Automation Hub item installed in a space, of any integration kind, with its status and configuration.","HowTo":"Help resource (video, article or support link) shown in the app for a feature area, with view statistics.","Storylane":"Interactive product demo offered to users in the in-app learning content.","ReleaseNote":"Release note announcing a product change to users, who can react to it.","CpClient":"User account identified by its sign-in email, with the spaces it is a member of.","CpProfile":"Saved view of a customer portal screen that belongs to a Coevera staff member, with its view settings.","CpProduct":"Product of the Coevera catalog that subscriptions can purchase, such as licenses or add-ons, with its prices in EUR, USD and GBP and its renewal terms.","PurchasedProduct":"Product a subscription has purchased, such as licenses or an add-on, with its quantity, price, status and the period it is active.","SubscriptionNotification":"Notification email sent to the recipients of a subscription under a notification setting, such as a renewal reminder or an overdue payment notice for an order.","CpActivity":"Entry of the customer portal audit trail: an action a user performed, the module it was performed in and the space it concerned.","ActivityDetail":"Detail of a customer portal audit trail entry: the record that was changed, the operation performed and the data before and after the change.","NotificationSetting":"Automatic email notification to customers, sent before a subscription renewal or when an order payment is overdue.","FormView":"Variant of the form of an account, contact, lead or opportunity type that hides or colors selected fields; owned by a user and can be shared.","FormViewSharingClientRelation":"Sharing of a form view with a user, as a watcher or an editor.","FormViewSharingSalesUnitRelation":"Sharing of a form view with a sales unit, as a watcher or an editor.","InterfacePreview":"Layout of how records of an entity type are previewed in the app: preview and card fields, detail tabs, widgets and charts.","SpaceSetting":"Space-wide setting stored as a named value, such as the working days, custom entity names or the revenue schedule configuration."}},"type":{"type":"integer","description":"Where the template file is stored: S3File for a file uploaded to Coevera storage (the default) or GoogleDriveFile for a Google Drive document. Set on create only.\n\nInteger enum value: -1 - S3FileUpload, 1 - S3File, 2 - S3Image, 3 - GoogleDriveFile, 4 - OneDriveFile, 5 - BoxFile, 6 - DropboxFile, 7 - SharepointFile, 8 - ExternalURL, 9 - AlfrescoFile, 10 - UrlFile","example":-1,"enum":[-1,1,2,3,4,5,6,7,8,9,10],"readOnly":true,"x-enumDescriptions":{"1":"File stored in Coevera storage; content can be sent directly or is downloaded from url.","2":"Image stored in Coevera storage, such as a record picture or product image.","3":"File linked from Google Drive.","4":"File linked from OneDrive.","5":"File linked from Box.","6":"File linked from Dropbox.","7":"File linked from SharePoint.","8":"Link to an external web page or resource.","9":"File linked from Alfresco.","10":"File referenced by a direct download URL.","-1":"Use on create when url points to a file already uploaded to Coevera storage; the object is then saved as S3File."}},"upload_source":{"type":"integer","description":"Editor the uploaded image is embedded in, such as an email template or rich-text content. Empty for files that are not embedded images.\n\nInteger enum value: 1 - EmailTemplate, 2 - RichTextEditor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Image embedded in an email template.","2":"Image embedded in rich-text content, such as a note or description."}},"url":{"type":"string","example":"string","description":"URL of the object. If URL scheme is not defined \"http://\" is automatically prepended to supplied URL.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"content":{"type":"string","format":"binary","example":"blob","description":"Data content of the object."},"template_entity_api_name":{"type":"string","example":"string","description":"API name of the custom entity the template renders. Set only when template_entity_name is \"CustomEntity\"; otherwise empty."}},"required":["filename","template_entity_name","type"]},"updateCloudObjectTemplateInput":{"description":"Field values to change on a CloudObjectTemplate record; fields left out keep their values.","properties":{"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the producing application."},"company_cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company folder, or empty when the object is not stored in the company tree."},"creator_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the uploading user."},"filename":{"type":"string","example":"string","description":"File name (with extension) used when downloading the object."},"is_public":{"type":"boolean","example":false,"description":"When true, the object can be served via a public URL (see public_url)."},"status":{"type":"integer","description":"Whether the document template is active and offered for generating documents, or inactive and kept for later use. Defaults to Active.\n\nInteger enum value: 1 - Active, 2 - Inactive","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Template is available for generating documents.","2":"Template is kept but not offered for generating documents."}},"template_entity_name":{"type":"string","example":"Account","enum":["Account","AccountDataExRelation","AccountKPI","AccountProductPricing","AccountRole","AccountSharingClientRelation","AccountSharingSalesUnitRelation","AccountSocialRelation","AccountType","Activity","ActivityComment","ActivityDataExRelation","ActivityDetail","ActivityKPI","ActivityRelation","ActivityType","AiAgent","AiBalance","AiEvent","AiEventJournal","AllowedAccountType","AllowedAppointmentType","AllowedCompanyPhone","AllowedContactType","AllowedLeadType","AllowedPipeline","AllowedQuoteType","AllowedTaskType","ApiAccess","Application","Appointment","AppointmentClientInviteesRelation","AppointmentContactInviteesRelation","AppointmentInviteeNotifyQueue","AppointmentReminder","AppointmentSchedule","AppointmentType","Approval","ApprovalApprover","ApprovalProcess","ApprovalProcessActivityLogLine","AuditLog","AutomationHubApp","AutomationHubCategory","AutomationHubItem","ChatConversation","Client","ClientExcludedOppty","ClientFavorite","ClientSetting","ClientStoryRead","CloudObject","CloudObjectFolder","CloudObjectRelation","CloudObjectStepRelation","CloudObjectTemplate","CompanyEmail","Contact","ContactAccountAccountRoleRelation","ContactAccountRelation","ContactDataExRelation","ContactKPI","ContactRelation","ContactRelationType","ContactSharingClientRelation","ContactSharingSalesUnitRelation","ContactSocialRelation","ContactType","Country","CountryCrm","CpActivity","CpCallLog","CpCalling","CpClient","CpProduct","CpProfile","CpTeamSpaceClient","Currency","CurrencyExchangeRate","CurrencyExchangeRatesList","CustomEntity","CustomEntityDataExRelation","CustomEntityKPI","CustomEntityRelation","CustomEntityRelationData","CustomEntitySharingClientRelation","CustomEntitySharingSalesUnitRelation","CustomEntityType","Data","Ebook","Email","EmailContentSharingClientRelation","EmailContentSharingSalesUnitRelation","EmailLabel","EmailLabelRelation","EmailMailboxRelation","EmailSequence","EmailSequenceActivityLog","EmailSequenceActivityLogLine","EmailSequenceEnrolled","EmailSequenceEnrolledStatus","EmailSequenceSettings","EmailTemplate","EmailTemplateFolder","EmailTemplateSharingClientRelation","EmailTemplateSharingSalesUnitRelation","EmailThreadMailboxClientReadState","Entity","EntityFitness","EntityFitnessIndicator","EntityHealth","EntityHealthSettingsHistory","EntityScoring","EntitySettings","EntityType","Field","FieldMapping","FieldPermission","FieldSequence","Forecast","ForecastSharingClientRelation","ForecastSharingSalesUnitRelation","FormView","FormViewSharingClientRelation","FormViewSharingSalesUnitRelation","GhostContact","GhostContactAccountAccountRoleRelation","GhostContactAccountRelation","GhostLeadOpptyContactRelation","GhostLeadOpptyContactSalesRoleRelation","HowTo","ImportMappingMask","InterfacePreview","Lead","LeadOppty","LeadOpptyAccountRelation","LeadOpptyContactGroupRelation","LeadOpptyContactRelation","LeadOpptyContactSalesRoleRelation","LeadOpptyDataExRelation","LeadOpptyKPI","LeadOpptyProjectRelation","LeadOpptySharingClientRelation","LeadOpptySharingSalesUnitRelation","LeadOpptyStepCheckListRelation","LeadOpptyType","LeadProcess","LeadType","MasterRight","Media","Memo","MemoComment","Message","MessageRelation","MessageSharingClientRelation","MessageSharingSalesUnitRelation","Note","NotificationSetting","OnlineForm","OnlineFormActivityLogLine","OnlineFormDataExRelation","OnlineFormRelation","OnlineFormStyle","OnlineFormType","OnlineFormTypeEmailRelation","Opportunity","OpportunityType","OpptyProductRelation","OpptyProductRelationDataExRelation","OpptyProductRelationRevenueSchedule","OpptyProductRelationRevenueSchedulePeriod","OpptyProductRelationType","OpptyRecurrence","OpptyRevenueSchedule","OpptyRevenueSchedulePeriod","Order","OrderHistory","OrderItem","OrderRelatedDocument","OrderTempData","OrderTempDataItem","ParentAccountRelationType","Partner","Payment","PaymentAdditionalData","PaymentTerm","Phone","Pipeline","Process","ProcessActivityLog","ProcessActivityLogLine","ProcessChangeOwnerLog","ProcessScheduledAction","ProcessTemplate","Product","ProductCategory","ProductDataExRelation","ProductPipelineRelation","ProductPriceList","ProductPriceListPrice","ProductType","Profile","ProfileDraft","ProfileRelation","ProfileSharingClientRelation","ProfileSharingSalesUnitRelation","Project","ProjectContactRelation","ProjectDataExRelation","ProjectKPI","ProjectObjective","ProjectSharingClientRelation","ProjectSharingSalesUnitRelation","ProjectType","PurchasedProduct","Quote","QuoteAccountRelation","QuoteContactRelation","QuoteDataExRelation","QuoteKPI","QuoteProcess","QuoteSharingClientRelation","QuoteSharingSalesUnitRelation","QuoteType","ReleaseNote","Report","ReportFolder","ReportSchedule","ReportSharingClientRelation","ReportSharingSalesUnitRelation","RevenueRecognition","SalesRole","SalesUnit","SalesUnitClientRelation","SapiUser","Solution","SolutionTemplate","SpaceSetting","State","Step","StepChecklist","StepChecklistSalesRoleRelation","Storylane","Subscription","SubscriptionHubItem","SubscriptionNotification","SubscriptionRepresentative","SubscriptionSDR","Supplier","Tag","TagRelation","Target","TargetRelation","Task","TaskRecurrence","TaskReminder","TaskSharingClientRelation","TaskSharingSalesUnitRelation","TaskType","TeamPipelineHubItem","TeamPipelineHubItemBase","TeamSpace","TeamSpaceClient","TeamSpaceClientSetting","TeamSpaceProperty","TeamSpaceRegion","TextMessage","TextMessageConversation","TextMessageConversationRelations","Timeframe","Translation","Type","UnsubscribedPhone","UseCase","UserProfile","UserRole","Webhook","WebhookEvent","Webresource"],"description":"Entity type the template renders (e.g. Account, Opportunity, Quote). For custom entities, the value is \"CustomEntity\" and the API name is exposed via template_entity_api_name.","x-enumDescriptions":{"AiAgent":"AI agent offered in the Automation Hub, such as an AI assistant integration, whose use is recorded as AI events.","AiBalance":"AI credit balance of a subscription for a period, with the free credits remaining and spent and the overage credits used.","AiEvent":"Use of an AI agent by a user in a space, with its outcome, response time and the AI credits it consumed.","AiEventJournal":"Single AI model call made while handling an AI event, with the model used, its response time and cost.","AuditLog":"Entry of the space audit log recording an administrative action, such as a data export, a user invitation or a sales unit change, and who performed it.","Account":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","AccountKPI":"Recorded KPI event of an account, such as its creation, archiving or the first and last email sent, used in KPI reports.","AccountRole":"Role a contact can hold at an account, configurable per space and assigned on the link between the contact and the account.","AccountSharingClientRelation":"Sharing of an account with a user, as a watcher or an editor.","AccountSharingSalesUnitRelation":"Sharing of an account with a sales unit, as a watcher or an editor.","AccountSocialRelation":"Social network profiles of an account, such as its LinkedIn, Twitter or Facebook pages.","AccountProductPricing":"Special price of a product for one account, used instead of the regular price when the product is sold to that account.","AccountType":"Configurable category of accounts that defines the form layout and settings used for accounts of that type.","Activity":"Task or appointment: the common view of the to-dos and meetings of the sales team, linked to the records they concern.","ActivityComment":"Comment written by a user on a task or an appointment.","ActivityKPI":"Recorded KPI event of a task or an appointment, such as its creation or completion, used in KPI reports.","ActivityRelation":"Link of a task or an appointment to a record it concerns, such as an account, contact, lead, opportunity, project or quote.","ActivityType":"Task type or appointment type, with the settings both kinds of activity types share.","AllowedLeadType":"Lead type that a user role is allowed to use.","AllowedPipeline":"Pipeline that a user role is allowed to use, optionally with access to the documents of its steps.","ApiAccess":"API credentials that an integration uses to access the space, with the parts of the API they may read or write.","Application":"Application that works with the space, such as the web or mobile app, an Automation Hub integration or an API access; changes and events are attributed to it.","Appointment":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","AppointmentClientInviteesRelation":"Invitation of a user of the space to an appointment, with their response.","AppointmentContactInviteesRelation":"Invitation of an external person to an appointment, identified by email and matched to a contact when one exists, with their response.","AppointmentInviteeNotifyQueue":"Invitation email for an appointment that is waiting to be sent to an invitee's email address.","AppointmentReminder":"Reminder a user has set for an appointment, notifying them a given time before it starts.","AppointmentSchedule":"Online booking link through which people book appointments with a user in the time slots the user has available.","AppointmentType":"Configurable category of appointments, such as a meeting or a call, that defines their form layout and icon.","AllowedAccountType":"Account type that a user role is allowed to use.","AllowedAppointmentType":"Appointment type that a user role is allowed to use.","AllowedContactType":"Contact type that a user role is allowed to use.","AllowedCompanyPhone":"Company phone number that a user role is allowed to use for calls and text messages.","AllowedTaskType":"Task type that a user role is allowed to use.","Approval":"Approval request that an approval process raised for a record, such as a quote or an opportunity, waiting for the decision of its approvers.","ApprovalApprover":"User asked to decide an approval request, with their response and comment.","ApprovalProcess":"Approval rule that raises approval requests for records of an entity when its trigger conditions are met, and defines who approves them.","ApprovalProcessActivityLogLine":"Entry in the activity log of an approval, recording one step of the approval and its result.","ChatConversation":"Conversation of a user with the AI assistant, either general or about a specific record.","Client":"User of the space; owns records, belongs to sales units and has a user role that determines what they can do.","ClientExcludedOppty":"Choice of a user to exclude an opportunity from their forecast and quota calculations, or to include it again.","ClientFavorite":"Record or screen profile that a user has marked as a favorite.","ClientSetting":"Personal setting of a user, stored as a named value.","ClientStoryRead":"Mark that a user has read an activity, email or memo in their feed, and whether they chose not to follow up on it.","CloudObject":"File stored in the space, such as a document, image or recording, that can be attached to records.","CloudObjectFolder":"Folder that organizes files, either in the company documents or within a record.","CloudObjectRelation":"Attachment of a file to a record, such as an account, contact, opportunity, activity or email template, optionally in a folder of that record.","CloudObjectStepRelation":"File attached to a pipeline step, such as a document the sales team uses in that step.","CloudObjectTemplate":"Document template, such as a Word or Excel file with placeholders, used to generate documents filled with record data.","CompanyEmail":"Shared company mailbox connected to the space that users can send emails from, such as a sales or support address.","Contact":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","ContactAccountRelation":"Link between a contact and an account they work for, with their position and their place in the account org chart.","ContactAccountAccountRoleRelation":"Role assigned to a contact at an account, on the link between the contact and the account.","ContactRelation":"Link between two related contacts, such as colleagues or family members; its labels give the kind of relationship.","ContactRelationType":"Kind of relationship that can be assigned to a link between two contacts, such as Spouse or Colleague, with its display color.","ContactKPI":"Recorded KPI event of a contact, such as its creation, archiving or the first and last email sent, used in KPI reports.","ContactSharingClientRelation":"Sharing of a contact with a user, as a watcher or an editor.","ContactSharingSalesUnitRelation":"Sharing of a contact with a sales unit, as a watcher or an editor.","ContactSocialRelation":"Social network profiles of a contact, such as their LinkedIn, Twitter or Facebook profiles.","ContactType":"Configurable category of contacts that defines the form layout and settings used for contacts of that type.","CountryCrm":"Country offered in address fields; a new country value on a record must match one of these countries.","Currency":"Currency used for monetary values in the space, converted from the base currency by exchange rates.","CurrencyExchangeRate":"Exchange rate of a currency against the base currency within an exchange rate list.","CurrencyExchangeRatesList":"Set of exchange rates, one per currency, that applies from a given date until the next list takes effect.","CustomEntityRelation":"Custom relation that links records of two entities through a pair of relation fields, one on each side.","CustomEntityRelationData":"Link between two records made through a custom relation, such as an account linked to a custom entity record.","CustomEntity":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","CustomEntityDataExRelation":"Option selected in a multi-select checkbox field of a custom entity record; there is one link per selected option.","CustomEntityKPI":"Recorded KPI event of a custom entity record, such as its creation or last modification, used in KPI reports.","CustomEntitySharingClientRelation":"Sharing of a custom entity record with a user, as a watcher or an editor.","CustomEntitySharingSalesUnitRelation":"Sharing of a custom entity record with a sales unit, as a watcher or an editor.","CustomEntityType":"Configurable category of records of a custom entity that defines their form layout and settings; entityApiName names the custom entity.","Data":"Option of a dropdown or multi-select field, one of the values users can choose from.","Ebook":"E-book offered to users in the in-app learning content, with view statistics.","Email":"Email message sent or received by users of the space, linked to the contacts, accounts and other records it concerns.","EmailLabel":"Personal label a user applies to email conversations to organize their mailbox; labels can be nested.","EmailLabelRelation":"Email label applied to a conversation in a mailbox.","EmailMailboxRelation":"Link between an email and a mailbox the email belongs to.","EmailSequence":"Automated series of emails sent step by step to the records enrolled in it, with rules for when to send and when to stop.","EmailSequenceActivityLog":"Log of one run of an email sequence, with when it started and finished and who triggered it.","EmailSequenceActivityLogLine":"Entry in the log of an email sequence run, recording one step and its outcome.","EmailSequenceEnrolled":"Record enrolled in an email sequence, such as a contact, lead or opportunity, with the run that enrolled it.","EmailSequenceEnrolledStatus":"Progress of an enrolled record through one step of an email sequence, with the email, text message or task the step produced.","EmailSequenceSettings":"Copy of an email sequence's steps and rules taken when records are enrolled, so later edits to the sequence do not affect runs already in progress.","EmailTemplate":"Reusable email whose body can contain placeholders filled with record values; templates are organized in folders and can be shared.","EmailTemplateFolder":"Folder that organizes email templates; folders can be nested.","EmailTemplateSharingClientRelation":"Sharing of an email template with a user, as a watcher or an editor.","EmailTemplateSharingSalesUnitRelation":"Sharing of an email template with a sales unit, as a watcher or an editor.","EmailContentSharingClientRelation":"Sharing of the body of an email with a user, letting them read its content.","EmailContentSharingSalesUnitRelation":"Sharing of the body of an email with a sales unit, letting its members read its content.","EmailThreadMailboxClientReadState":"Time a user last read an email conversation in a mailbox, telling which conversations have unread emails.","Entity":"Kind of record in the space, such as Account, Lead or a custom entity, with its display names and behavior.","EntityHealth":"Health configuration of an account type, defining when accounts of that type are healthy or in critical health.","EntityScoring":"Lead scoring configuration: rules that give leads a score, so that the most promising ones stand out.","EntityHealthSettingsHistory":"Version of the health configuration of an account type, recorded each time the configuration changes.","EntityFitness":"Fitness configuration of a lead or opportunity type: the indicators that flag records of that type needing attention.","EntityFitnessIndicator":"Indicator of a fitness configuration: a rule that flags lead or opportunity records needing attention and suggests how to fix them.","EntityType":"Record type of an entity, such as an account, lead or task type, that classifies records and defines their form.","EntitySettings":"Space-wide settings of an entity, such as the default columns of its lists.","Field":"Field of an entity, built-in or custom, with its name, type and configuration.","FieldMapping":"Rules for copying field values from a source record to a new target record, for example when a lead is qualified into an opportunity.","FieldSequence":"Numbering pattern of an auto-number field, used to generate its values for records that match the filter of the sequence.","FieldPermission":"Access a user role has to a custom field: full access, read-only or hidden.","Forecast":"Sales forecast that sums an amount over the opportunities of a pipeline for a period, broken down by levels such as sales units and users.","ForecastSharingClientRelation":"Share of a forecast with an individual user.","ForecastSharingSalesUnitRelation":"Share of a forecast with a sales unit.","GhostContact":"Placeholder person on an org chart for someone who is not a contact in the space yet, such as an unknown decision maker.","GhostLeadOpptyContactRelation":"Placement of a ghost contact on the org chart of a lead or an opportunity.","GhostContactAccountRelation":"Placement of a ghost contact on the org chart of an account, with its position and comment.","GhostLeadOpptyContactSalesRoleRelation":"Sales role assigned to a placeholder (ghost) contact on the org chart of a lead or opportunity.","GhostContactAccountAccountRoleRelation":"Role assigned to a ghost contact on the org chart of an account.","ImportMappingMask":"Saved mapping of import file columns to fields, reused when importing records of the same entity.","Lead":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","LeadOppty":"Lead or opportunity, with the fields both kinds of sales records share.","LeadOpptyAccountRelation":"Link between a lead or opportunity and an account, marking the primary account.","LeadOpptyContactGroupRelation":"Group of contacts on the org chart of a lead or opportunity.","LeadOpptyContactRelation":"Link between a lead or opportunity and a contact, with the contact's sales roles and org-chart position.","LeadOpptyContactSalesRoleRelation":"Sales role assigned to a contact on a lead or opportunity.","LeadOpptyKPI":"KPI event of a lead or opportunity (e.g. created, qualified, won, lost or moved to another step), used in activity reporting.","LeadOpptyProjectRelation":"Link between a lead or opportunity and a project it is part of.","LeadOpptySharingClientRelation":"Share of a lead or opportunity with an individual user, with the access level granted.","LeadOpptySharingSalesUnitRelation":"Share of a lead or opportunity with a sales unit, with the access level granted.","LeadOpptyStepCheckListRelation":"Completion of a step checklist item on a lead, opportunity or quote, with the activity, email, note or document that fulfils it.","LeadOpptyType":"Lead type or opportunity type, with the settings both kinds of sales record types share.","LeadProcess":"Lead process: the ordered steps that leads of its lead types move through.","LeadType":"Lead type that classifies leads and defines their forms and the lead process they follow.","MasterRight":"User role in the space that defines which features, records and pipelines its users can access.","Media":"Recording of a call or meeting with its transcription and AI summary, attached to a call, task or appointment.","Memo":"Internal message written by a user and linked to records, which other users can comment on.","MemoComment":"Comment a user wrote on a memo.","Message":"Email or memo, with the fields both kinds of messages share.","MessageRelation":"Link between a message (email or memo) and a record such as an account, contact, lead or opportunity.","MessageSharingClientRelation":"Share of a message (email or memo) with an individual user.","MessageSharingSalesUnitRelation":"Share of a message (email or memo) with a sales unit.","Note":"Note a user wrote on a record such as an account, contact, lead, opportunity, project or quote.","OnlineForm":"Submission (response) of an online form, with the answers and the records it created or updated.","OnlineFormActivityLogLine":"One step logged while processing an online form submission.","OnlineFormDataExRelation":"Option selected in a multi-select checkbox field of an online form submission.","OnlineFormTypeEmailRelation":"Email that sent an online form link to a recipient, with the record it was sent on.","OnlineFormRelation":"Link between an online form submission and a record it created or updated.","OnlineFormType":"Online form definition: the fields and settings of a web form whose submissions create or update records.","OnlineFormStyle":"Visual style (colors, fonts, layout) that can be applied to online forms.","Opportunity":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","OpportunityType":"Opportunity type that classifies opportunities and defines their forms (edit, qualify, won and lost).","OpptyProductRelation":"Product line item on an opportunity or quote, with its quantity, price and discount.","OpptyProductRelationDataExRelation":"Option selected in a multi-select checkbox field of a product line item.","OpptyProductRelationType":"Line-item type that defines the form of product line items on opportunities and quotes; paired with a product type.","OpptyRecurrence":"Recurrence rule that creates new copies of an opportunity on a schedule, e.g. for repeat deals once it is won or lost.","OpptyRevenueSchedule":"Revenue schedule that splits the value of an opportunity into periods.","OpptyRevenueSchedulePeriod":"One period of an opportunity revenue schedule, with its date and amount.","OpptyProductRelationRevenueSchedule":"Revenue schedule that splits the amount of a product line item into periods.","OpptyProductRelationRevenueSchedulePeriod":"One period of a product line item revenue schedule, with its date and amount.","Order":"Order of a subscription (e.g. a purchase, renewal or license change) with its items, amounts, tax and payment status.","OrderItem":"Line item of an order: a product with its quantity, price and subtotal, and the monthly recurring revenue it adds.","OrderTempDataItem":"Line item of an order that waits for online payment in checkout, with its product, quantity and price.","OrderHistory":"Status change recorded in the history of an order.","OrderRelatedDocument":"Payment confirmation or credit note issued for an order.","OrderTempData":"Order started in checkout that waits for online payment; it becomes a regular order once the payment succeeds.","Payment":"Payment received for an order, with the payment method, the amount paid and the transaction reference.","PaymentTerm":"Payment term of orders, such as immediate payment or payment within a number of days, in a given language.","PaymentAdditionalData":"Instructions given at checkout that are carried out once the order is paid, such as the invoice recipients, new subscription admins and the users to invite after a space reset.","ParentAccountRelationType":"Kind of parent-child relationship between accounts (e.g. parent company and subsidiary), with a label for each side.","Phone":"Phone number connected to Coevera for calls, text messages or WhatsApp, either personal to a user or shared by the company.","AllowedQuoteType":"Quote type that a user role is allowed to use.","Quote":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","QuoteAccountRelation":"Link between a quote and an account, marking the primary account.","QuoteContactRelation":"Link between a quote and a contact, marking the primary contact.","QuoteDataExRelation":"Option selected in a multi-select checkbox field of a quote.","QuoteKPI":"KPI event of a quote (e.g. created, accepted, archived or moved to another step), used in activity reporting.","QuoteProcess":"Quote process: the ordered steps that quotes of its quote types move through.","QuoteSharingClientRelation":"Share of a quote with an individual user, with the access level granted.","QuoteSharingSalesUnitRelation":"Share of a quote with a sales unit, with the access level granted.","QuoteType":"Quote type that classifies quotes and defines their forms and the quote process they follow.","LeadOpptyDataExRelation":"Option selected in a multi-select checkbox field of a lead or opportunity.","AccountDataExRelation":"Option selected in a multi-select checkbox field of an account; there is one link per selected option.","ContactDataExRelation":"Option selected in a multi-select checkbox field of a contact; there is one link per selected option.","ActivityDataExRelation":"Option selected in a multi-select checkbox field of a task or an appointment; there is one link per selected option.","ProductDataExRelation":"Option selected in a multi-select checkbox field of a product.","ProjectDataExRelation":"Option selected in a multi-select checkbox field of a project.","Pipeline":"Sales pipeline: the ordered steps that opportunities of its opportunity types move through.","Process":"Automatizer process: an automated workflow that runs its actions when its trigger fires (a record event, a schedule or a webhook).","ProcessActivityLog":"One run of an Automatizer process, with its status, timing and the steps it took.","ProcessActivityLogLine":"One step logged in a run of an Automatizer process.","ProcessScheduledAction":"Action of an Automatizer process that is waiting to run for a record at a scheduled time.","ProcessTemplate":"Ready-made Automatizer process offered in the template gallery as a starting point for new processes.","Solution":"Canvas that groups related automation tools (Automatizer processes, email sequences, online forms) and tracks their status and activity.","SolutionTemplate":"Ready-made solution offered in the template gallery as a starting point for new solutions.","ProcessChangeOwnerLog":"Round-robin progress of an Automatizer change-owner action, recording which users have already been assigned a record so the next record goes to the next user.","Product":"Product or service in the catalog that can be added as a line item to opportunities and quotes.","ProductType":"Product type that classifies products and defines their form.","ProductCategory":"Category in the hierarchy of the product catalog.","ProductPipelineRelation":"Pipeline in which a product can be added as a line item.","ProductPriceList":"Price list with product prices per currency, applied to opportunities and quotes while it is active.","ProductPriceListPrice":"Price of a product in one currency within a price list.","Profile":"Saved view of an app screen (e.g. leads, accounts or opportunities) with its filter, layout and charts, optionally shared with others.","ProfileRelation":"Record added explicitly to a static saved view (profile).","ProfileDraft":"Unsaved changes a user made to the view of an app screen, kept until they are saved or discarded.","ProfileSharingClientRelation":"Share of a saved view (profile) with an individual user.","ProfileSharingSalesUnitRelation":"Share of a saved view (profile) with a sales unit.","Project":"Project delivered for an account or run internally, with its objectives, activities and progress.","ProjectKPI":"KPI event of a project (its completion), used in activity reporting.","ProjectContactRelation":"Link between a project and a contact, marking the primary contact.","ProjectObjective":"Objective (goal) of a project.","ProjectType":"Project type that classifies projects and defines their form and icon.","ProjectSharingClientRelation":"Share of a project with an individual user, with the access level granted.","ProjectSharingSalesUnitRelation":"Share of a project with a sales unit, with the access level granted.","Report":"Saved report or dashboard with its settings, sharing and delivery schedule.","ReportFolder":"Folder that organizes reports; folders can be nested.","ReportSharingClientRelation":"Share of a report with an individual user, with the access level granted.","ReportSharingSalesUnitRelation":"Share of a report with a sales unit, with the access level granted.","ReportSchedule":"Schedule that emails a report to its recipients at regular intervals.","RevenueRecognition":"Revenue of an opportunity product for one period of its revenue schedule, used in revenue reporting.","SalesRole":"Role a contact plays in a deal (e.g. decision maker), assigned to contacts on leads and opportunities.","SalesUnit":"Sales unit (team) in the organization hierarchy that users belong to.","SalesUnitClientRelation":"Membership of a user in a sales unit, as a member or manager.","Step":"Step of an opportunity pipeline, lead process or quote process that records move through.","StepChecklist":"Checklist item of a pipeline step, such as logging an activity, filling a field or attaching a document.","StepChecklistSalesRoleRelation":"Sales role that a step checklist item is shown to.","Tag":"Label that users attach to records such as accounts, contacts or opportunities to categorize them.","TagRelation":"Assignment of a tag to a record.","Target":"Sales target set for a user or a group of users for a period, measured by a chosen metric.","TargetRelation":"Link between a group target and a user target that rolls up into it.","Task":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","TaskRecurrence":"Recurrence rule that defines when the next occurrences of a recurring task are created.","TaskReminder":"Reminder a user set to be notified about a task at a given time.","TaskSharingClientRelation":"Share of a task with an individual user, with the access level granted.","TaskSharingSalesUnitRelation":"Share of a task with a sales unit, with the access level granted.","TaskType":"Task type that classifies tasks and defines their form and icon.","TextMessage":"Message sent or received in a text message conversation or in an AI assistant chat.","TextMessageConversation":"Text message conversation between a Coevera phone number and an external phone number.","TextMessageConversationRelations":"Link between a text message conversation and a record such as an account, contact, lead or opportunity.","Translation":"Translation of a field name, dropdown option or form text into the supported languages.","Type":"Data type of fields, defining the kind of value, its validation and whether fields of the type can be filtered, sorted or grouped.","Timeframe":"Time a lead or opportunity has spent in a pipeline step.","UnsubscribedPhone":"Phone number that opted out of receiving text messages.","UseCase":"Use case showing how a feature can be used, offered to users in the in-app learning content.","Webresource":"Web page embedded in the app for records of an entity, with its URL filled from the record's field values.","Webhook":"Registered webhook urls will be called when subscribed events occur with access level corresponding to the Webhook owner.","WebhookEvent":"Event a webhook subscribes to; the webhook is called whenever the event occurs.","Country":"Country that can be selected in billing addresses, with its states, sales region and the Coevera supplier that bills customers there.","TeamSpaceClient":"Membership of a user profile in a space.","CpTeamSpaceClient":"Membership of a user in a space, as listed for subscription administrators, who can disable it.","CpCallLog":"Call, text message or transcription made through built-in calling, with its phone numbers, status and cost.","UserProfile":"User account that signs in to Coevera and can be a member of several spaces and subscriptions.","UserRole":"Customer portal role that grants a user rights such as order, subscription, partner and user management.","TeamSpace":"Space of a subscription: a separate Coevera CRM instance with its own users, data and settings.","TeamSpaceRegion":"Hosting region where spaces run, with its address, email domain and whether new trial spaces can be created in it.","TeamSpaceProperty":"Named property of a space, such as its time zone, first day of the week or attachment size limit.","TeamSpaceClientSetting":"Integration settings of a user in a space, such as the connected mailbox and the contact, calendar and task sync with Google, Microsoft 365 or Exchange.","SapiUser":"API user that signs in with a user name and password, as a standard or administrator API user, optionally limited to one space and to allowed source IP addresses.","CpCalling":"Calling credit of a subscription, spent on calls, recordings and AI services such as transcription.","Subscription":"Customer subscription to Coevera: the contract that covers its spaces, licenses, billing and orders.","SubscriptionRepresentative":"Coevera staff member who can be assigned to subscriptions as their sales representative.","SubscriptionSDR":"Coevera staff member who can be assigned to subscriptions as their sales development representative.","Partner":"Partner company (e.g. affiliate, agent or consultant) that refers customer subscriptions and earns commission on their orders.","Supplier":"Company that sells subscriptions and issues orders and invoices, with its legal imprint.","State":"State or province of a country that can be selected in billing addresses.","AutomationHubApp":"App (vendor) in the Automation Hub that provides integrations, with its website and support links.","AutomationHubCategory":"Category that groups items in the Automation Hub.","AutomationHubItem":"Integration or add-on offered in the Automation Hub that can be enabled in a space.","SubscriptionHubItem":"Automation Hub item included in a subscription.","TeamPipelineHubItem":"Automation Hub item installed in a space, with its status and configuration.","TeamPipelineHubItemBase":"Automation Hub item installed in a space, of any integration kind, with its status and configuration.","HowTo":"Help resource (video, article or support link) shown in the app for a feature area, with view statistics.","Storylane":"Interactive product demo offered to users in the in-app learning content.","ReleaseNote":"Release note announcing a product change to users, who can react to it.","CpClient":"User account identified by its sign-in email, with the spaces it is a member of.","CpProfile":"Saved view of a customer portal screen that belongs to a Coevera staff member, with its view settings.","CpProduct":"Product of the Coevera catalog that subscriptions can purchase, such as licenses or add-ons, with its prices in EUR, USD and GBP and its renewal terms.","PurchasedProduct":"Product a subscription has purchased, such as licenses or an add-on, with its quantity, price, status and the period it is active.","SubscriptionNotification":"Notification email sent to the recipients of a subscription under a notification setting, such as a renewal reminder or an overdue payment notice for an order.","CpActivity":"Entry of the customer portal audit trail: an action a user performed, the module it was performed in and the space it concerned.","ActivityDetail":"Detail of a customer portal audit trail entry: the record that was changed, the operation performed and the data before and after the change.","NotificationSetting":"Automatic email notification to customers, sent before a subscription renewal or when an order payment is overdue.","FormView":"Variant of the form of an account, contact, lead or opportunity type that hides or colors selected fields; owned by a user and can be shared.","FormViewSharingClientRelation":"Sharing of a form view with a user, as a watcher or an editor.","FormViewSharingSalesUnitRelation":"Sharing of a form view with a sales unit, as a watcher or an editor.","InterfacePreview":"Layout of how records of an entity type are previewed in the app: preview and card fields, detail tabs, widgets and charts.","SpaceSetting":"Space-wide setting stored as a named value, such as the working days, custom entity names or the revenue schedule configuration."}},"upload_source":{"type":"integer","description":"Editor the uploaded image is embedded in, such as an email template or rich-text content. Empty for files that are not embedded images.\n\nInteger enum value: 1 - EmailTemplate, 2 - RichTextEditor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Image embedded in an email template.","2":"Image embedded in rich-text content, such as a note or description."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"content":{"type":"string","format":"binary","example":"blob","description":"Data content of the object."},"template_entity_api_name":{"type":"string","example":"string","description":"API name of the custom entity the template renders. Set only when template_entity_name is \"CustomEntity\"; otherwise empty."}}},"batchCloudObjectTemplateInput":{"description":"Field values of a CloudObjectTemplate record to create, or to update when its id is set.","properties":{"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the producing application."},"company_cloud_object_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company folder, or empty when the object is not stored in the company tree."},"creator_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the uploading user."},"filename":{"type":"string","example":"string","description":"File name (with extension) used when downloading the object."},"is_public":{"type":"boolean","example":false,"description":"When true, the object can be served via a public URL (see public_url)."},"status":{"type":"integer","description":"Whether the document template is active and offered for generating documents, or inactive and kept for later use. Defaults to Active.\n\nInteger enum value: 1 - Active, 2 - Inactive","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Template is available for generating documents.","2":"Template is kept but not offered for generating documents."}},"template_entity_name":{"type":"string","example":"Account","enum":["Account","AccountDataExRelation","AccountKPI","AccountProductPricing","AccountRole","AccountSharingClientRelation","AccountSharingSalesUnitRelation","AccountSocialRelation","AccountType","Activity","ActivityComment","ActivityDataExRelation","ActivityDetail","ActivityKPI","ActivityRelation","ActivityType","AiAgent","AiBalance","AiEvent","AiEventJournal","AllowedAccountType","AllowedAppointmentType","AllowedCompanyPhone","AllowedContactType","AllowedLeadType","AllowedPipeline","AllowedQuoteType","AllowedTaskType","ApiAccess","Application","Appointment","AppointmentClientInviteesRelation","AppointmentContactInviteesRelation","AppointmentInviteeNotifyQueue","AppointmentReminder","AppointmentSchedule","AppointmentType","Approval","ApprovalApprover","ApprovalProcess","ApprovalProcessActivityLogLine","AuditLog","AutomationHubApp","AutomationHubCategory","AutomationHubItem","ChatConversation","Client","ClientExcludedOppty","ClientFavorite","ClientSetting","ClientStoryRead","CloudObject","CloudObjectFolder","CloudObjectRelation","CloudObjectStepRelation","CloudObjectTemplate","CompanyEmail","Contact","ContactAccountAccountRoleRelation","ContactAccountRelation","ContactDataExRelation","ContactKPI","ContactRelation","ContactRelationType","ContactSharingClientRelation","ContactSharingSalesUnitRelation","ContactSocialRelation","ContactType","Country","CountryCrm","CpActivity","CpCallLog","CpCalling","CpClient","CpProduct","CpProfile","CpTeamSpaceClient","Currency","CurrencyExchangeRate","CurrencyExchangeRatesList","CustomEntity","CustomEntityDataExRelation","CustomEntityKPI","CustomEntityRelation","CustomEntityRelationData","CustomEntitySharingClientRelation","CustomEntitySharingSalesUnitRelation","CustomEntityType","Data","Ebook","Email","EmailContentSharingClientRelation","EmailContentSharingSalesUnitRelation","EmailLabel","EmailLabelRelation","EmailMailboxRelation","EmailSequence","EmailSequenceActivityLog","EmailSequenceActivityLogLine","EmailSequenceEnrolled","EmailSequenceEnrolledStatus","EmailSequenceSettings","EmailTemplate","EmailTemplateFolder","EmailTemplateSharingClientRelation","EmailTemplateSharingSalesUnitRelation","EmailThreadMailboxClientReadState","Entity","EntityFitness","EntityFitnessIndicator","EntityHealth","EntityHealthSettingsHistory","EntityScoring","EntitySettings","EntityType","Field","FieldMapping","FieldPermission","FieldSequence","Forecast","ForecastSharingClientRelation","ForecastSharingSalesUnitRelation","FormView","FormViewSharingClientRelation","FormViewSharingSalesUnitRelation","GhostContact","GhostContactAccountAccountRoleRelation","GhostContactAccountRelation","GhostLeadOpptyContactRelation","GhostLeadOpptyContactSalesRoleRelation","HowTo","ImportMappingMask","InterfacePreview","Lead","LeadOppty","LeadOpptyAccountRelation","LeadOpptyContactGroupRelation","LeadOpptyContactRelation","LeadOpptyContactSalesRoleRelation","LeadOpptyDataExRelation","LeadOpptyKPI","LeadOpptyProjectRelation","LeadOpptySharingClientRelation","LeadOpptySharingSalesUnitRelation","LeadOpptyStepCheckListRelation","LeadOpptyType","LeadProcess","LeadType","MasterRight","Media","Memo","MemoComment","Message","MessageRelation","MessageSharingClientRelation","MessageSharingSalesUnitRelation","Note","NotificationSetting","OnlineForm","OnlineFormActivityLogLine","OnlineFormDataExRelation","OnlineFormRelation","OnlineFormStyle","OnlineFormType","OnlineFormTypeEmailRelation","Opportunity","OpportunityType","OpptyProductRelation","OpptyProductRelationDataExRelation","OpptyProductRelationRevenueSchedule","OpptyProductRelationRevenueSchedulePeriod","OpptyProductRelationType","OpptyRecurrence","OpptyRevenueSchedule","OpptyRevenueSchedulePeriod","Order","OrderHistory","OrderItem","OrderRelatedDocument","OrderTempData","OrderTempDataItem","ParentAccountRelationType","Partner","Payment","PaymentAdditionalData","PaymentTerm","Phone","Pipeline","Process","ProcessActivityLog","ProcessActivityLogLine","ProcessChangeOwnerLog","ProcessScheduledAction","ProcessTemplate","Product","ProductCategory","ProductDataExRelation","ProductPipelineRelation","ProductPriceList","ProductPriceListPrice","ProductType","Profile","ProfileDraft","ProfileRelation","ProfileSharingClientRelation","ProfileSharingSalesUnitRelation","Project","ProjectContactRelation","ProjectDataExRelation","ProjectKPI","ProjectObjective","ProjectSharingClientRelation","ProjectSharingSalesUnitRelation","ProjectType","PurchasedProduct","Quote","QuoteAccountRelation","QuoteContactRelation","QuoteDataExRelation","QuoteKPI","QuoteProcess","QuoteSharingClientRelation","QuoteSharingSalesUnitRelation","QuoteType","ReleaseNote","Report","ReportFolder","ReportSchedule","ReportSharingClientRelation","ReportSharingSalesUnitRelation","RevenueRecognition","SalesRole","SalesUnit","SalesUnitClientRelation","SapiUser","Solution","SolutionTemplate","SpaceSetting","State","Step","StepChecklist","StepChecklistSalesRoleRelation","Storylane","Subscription","SubscriptionHubItem","SubscriptionNotification","SubscriptionRepresentative","SubscriptionSDR","Supplier","Tag","TagRelation","Target","TargetRelation","Task","TaskRecurrence","TaskReminder","TaskSharingClientRelation","TaskSharingSalesUnitRelation","TaskType","TeamPipelineHubItem","TeamPipelineHubItemBase","TeamSpace","TeamSpaceClient","TeamSpaceClientSetting","TeamSpaceProperty","TeamSpaceRegion","TextMessage","TextMessageConversation","TextMessageConversationRelations","Timeframe","Translation","Type","UnsubscribedPhone","UseCase","UserProfile","UserRole","Webhook","WebhookEvent","Webresource"],"description":"Entity type the template renders (e.g. Account, Opportunity, Quote). For custom entities, the value is \"CustomEntity\" and the API name is exposed via template_entity_api_name.","x-enumDescriptions":{"AiAgent":"AI agent offered in the Automation Hub, such as an AI assistant integration, whose use is recorded as AI events.","AiBalance":"AI credit balance of a subscription for a period, with the free credits remaining and spent and the overage credits used.","AiEvent":"Use of an AI agent by a user in a space, with its outcome, response time and the AI credits it consumed.","AiEventJournal":"Single AI model call made while handling an AI event, with the model used, its response time and cost.","AuditLog":"Entry of the space audit log recording an administrative action, such as a data export, a user invitation or a sales unit change, and who performed it.","Account":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","AccountKPI":"Recorded KPI event of an account, such as its creation, archiving or the first and last email sent, used in KPI reports.","AccountRole":"Role a contact can hold at an account, configurable per space and assigned on the link between the contact and the account.","AccountSharingClientRelation":"Sharing of an account with a user, as a watcher or an editor.","AccountSharingSalesUnitRelation":"Sharing of an account with a sales unit, as a watcher or an editor.","AccountSocialRelation":"Social network profiles of an account, such as its LinkedIn, Twitter or Facebook pages.","AccountProductPricing":"Special price of a product for one account, used instead of the regular price when the product is sold to that account.","AccountType":"Configurable category of accounts that defines the form layout and settings used for accounts of that type.","Activity":"Task or appointment: the common view of the to-dos and meetings of the sales team, linked to the records they concern.","ActivityComment":"Comment written by a user on a task or an appointment.","ActivityKPI":"Recorded KPI event of a task or an appointment, such as its creation or completion, used in KPI reports.","ActivityRelation":"Link of a task or an appointment to a record it concerns, such as an account, contact, lead, opportunity, project or quote.","ActivityType":"Task type or appointment type, with the settings both kinds of activity types share.","AllowedLeadType":"Lead type that a user role is allowed to use.","AllowedPipeline":"Pipeline that a user role is allowed to use, optionally with access to the documents of its steps.","ApiAccess":"API credentials that an integration uses to access the space, with the parts of the API they may read or write.","Application":"Application that works with the space, such as the web or mobile app, an Automation Hub integration or an API access; changes and events are attributed to it.","Appointment":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","AppointmentClientInviteesRelation":"Invitation of a user of the space to an appointment, with their response.","AppointmentContactInviteesRelation":"Invitation of an external person to an appointment, identified by email and matched to a contact when one exists, with their response.","AppointmentInviteeNotifyQueue":"Invitation email for an appointment that is waiting to be sent to an invitee's email address.","AppointmentReminder":"Reminder a user has set for an appointment, notifying them a given time before it starts.","AppointmentSchedule":"Online booking link through which people book appointments with a user in the time slots the user has available.","AppointmentType":"Configurable category of appointments, such as a meeting or a call, that defines their form layout and icon.","AllowedAccountType":"Account type that a user role is allowed to use.","AllowedAppointmentType":"Appointment type that a user role is allowed to use.","AllowedContactType":"Contact type that a user role is allowed to use.","AllowedCompanyPhone":"Company phone number that a user role is allowed to use for calls and text messages.","AllowedTaskType":"Task type that a user role is allowed to use.","Approval":"Approval request that an approval process raised for a record, such as a quote or an opportunity, waiting for the decision of its approvers.","ApprovalApprover":"User asked to decide an approval request, with their response and comment.","ApprovalProcess":"Approval rule that raises approval requests for records of an entity when its trigger conditions are met, and defines who approves them.","ApprovalProcessActivityLogLine":"Entry in the activity log of an approval, recording one step of the approval and its result.","ChatConversation":"Conversation of a user with the AI assistant, either general or about a specific record.","Client":"User of the space; owns records, belongs to sales units and has a user role that determines what they can do.","ClientExcludedOppty":"Choice of a user to exclude an opportunity from their forecast and quota calculations, or to include it again.","ClientFavorite":"Record or screen profile that a user has marked as a favorite.","ClientSetting":"Personal setting of a user, stored as a named value.","ClientStoryRead":"Mark that a user has read an activity, email or memo in their feed, and whether they chose not to follow up on it.","CloudObject":"File stored in the space, such as a document, image or recording, that can be attached to records.","CloudObjectFolder":"Folder that organizes files, either in the company documents or within a record.","CloudObjectRelation":"Attachment of a file to a record, such as an account, contact, opportunity, activity or email template, optionally in a folder of that record.","CloudObjectStepRelation":"File attached to a pipeline step, such as a document the sales team uses in that step.","CloudObjectTemplate":"Document template, such as a Word or Excel file with placeholders, used to generate documents filled with record data.","CompanyEmail":"Shared company mailbox connected to the space that users can send emails from, such as a sales or support address.","Contact":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","ContactAccountRelation":"Link between a contact and an account they work for, with their position and their place in the account org chart.","ContactAccountAccountRoleRelation":"Role assigned to a contact at an account, on the link between the contact and the account.","ContactRelation":"Link between two related contacts, such as colleagues or family members; its labels give the kind of relationship.","ContactRelationType":"Kind of relationship that can be assigned to a link between two contacts, such as Spouse or Colleague, with its display color.","ContactKPI":"Recorded KPI event of a contact, such as its creation, archiving or the first and last email sent, used in KPI reports.","ContactSharingClientRelation":"Sharing of a contact with a user, as a watcher or an editor.","ContactSharingSalesUnitRelation":"Sharing of a contact with a sales unit, as a watcher or an editor.","ContactSocialRelation":"Social network profiles of a contact, such as their LinkedIn, Twitter or Facebook profiles.","ContactType":"Configurable category of contacts that defines the form layout and settings used for contacts of that type.","CountryCrm":"Country offered in address fields; a new country value on a record must match one of these countries.","Currency":"Currency used for monetary values in the space, converted from the base currency by exchange rates.","CurrencyExchangeRate":"Exchange rate of a currency against the base currency within an exchange rate list.","CurrencyExchangeRatesList":"Set of exchange rates, one per currency, that applies from a given date until the next list takes effect.","CustomEntityRelation":"Custom relation that links records of two entities through a pair of relation fields, one on each side.","CustomEntityRelationData":"Link between two records made through a custom relation, such as an account linked to a custom entity record.","CustomEntity":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","CustomEntityDataExRelation":"Option selected in a multi-select checkbox field of a custom entity record; there is one link per selected option.","CustomEntityKPI":"Recorded KPI event of a custom entity record, such as its creation or last modification, used in KPI reports.","CustomEntitySharingClientRelation":"Sharing of a custom entity record with a user, as a watcher or an editor.","CustomEntitySharingSalesUnitRelation":"Sharing of a custom entity record with a sales unit, as a watcher or an editor.","CustomEntityType":"Configurable category of records of a custom entity that defines their form layout and settings; entityApiName names the custom entity.","Data":"Option of a dropdown or multi-select field, one of the values users can choose from.","Ebook":"E-book offered to users in the in-app learning content, with view statistics.","Email":"Email message sent or received by users of the space, linked to the contacts, accounts and other records it concerns.","EmailLabel":"Personal label a user applies to email conversations to organize their mailbox; labels can be nested.","EmailLabelRelation":"Email label applied to a conversation in a mailbox.","EmailMailboxRelation":"Link between an email and a mailbox the email belongs to.","EmailSequence":"Automated series of emails sent step by step to the records enrolled in it, with rules for when to send and when to stop.","EmailSequenceActivityLog":"Log of one run of an email sequence, with when it started and finished and who triggered it.","EmailSequenceActivityLogLine":"Entry in the log of an email sequence run, recording one step and its outcome.","EmailSequenceEnrolled":"Record enrolled in an email sequence, such as a contact, lead or opportunity, with the run that enrolled it.","EmailSequenceEnrolledStatus":"Progress of an enrolled record through one step of an email sequence, with the email, text message or task the step produced.","EmailSequenceSettings":"Copy of an email sequence's steps and rules taken when records are enrolled, so later edits to the sequence do not affect runs already in progress.","EmailTemplate":"Reusable email whose body can contain placeholders filled with record values; templates are organized in folders and can be shared.","EmailTemplateFolder":"Folder that organizes email templates; folders can be nested.","EmailTemplateSharingClientRelation":"Sharing of an email template with a user, as a watcher or an editor.","EmailTemplateSharingSalesUnitRelation":"Sharing of an email template with a sales unit, as a watcher or an editor.","EmailContentSharingClientRelation":"Sharing of the body of an email with a user, letting them read its content.","EmailContentSharingSalesUnitRelation":"Sharing of the body of an email with a sales unit, letting its members read its content.","EmailThreadMailboxClientReadState":"Time a user last read an email conversation in a mailbox, telling which conversations have unread emails.","Entity":"Kind of record in the space, such as Account, Lead or a custom entity, with its display names and behavior.","EntityHealth":"Health configuration of an account type, defining when accounts of that type are healthy or in critical health.","EntityScoring":"Lead scoring configuration: rules that give leads a score, so that the most promising ones stand out.","EntityHealthSettingsHistory":"Version of the health configuration of an account type, recorded each time the configuration changes.","EntityFitness":"Fitness configuration of a lead or opportunity type: the indicators that flag records of that type needing attention.","EntityFitnessIndicator":"Indicator of a fitness configuration: a rule that flags lead or opportunity records needing attention and suggests how to fix them.","EntityType":"Record type of an entity, such as an account, lead or task type, that classifies records and defines their form.","EntitySettings":"Space-wide settings of an entity, such as the default columns of its lists.","Field":"Field of an entity, built-in or custom, with its name, type and configuration.","FieldMapping":"Rules for copying field values from a source record to a new target record, for example when a lead is qualified into an opportunity.","FieldSequence":"Numbering pattern of an auto-number field, used to generate its values for records that match the filter of the sequence.","FieldPermission":"Access a user role has to a custom field: full access, read-only or hidden.","Forecast":"Sales forecast that sums an amount over the opportunities of a pipeline for a period, broken down by levels such as sales units and users.","ForecastSharingClientRelation":"Share of a forecast with an individual user.","ForecastSharingSalesUnitRelation":"Share of a forecast with a sales unit.","GhostContact":"Placeholder person on an org chart for someone who is not a contact in the space yet, such as an unknown decision maker.","GhostLeadOpptyContactRelation":"Placement of a ghost contact on the org chart of a lead or an opportunity.","GhostContactAccountRelation":"Placement of a ghost contact on the org chart of an account, with its position and comment.","GhostLeadOpptyContactSalesRoleRelation":"Sales role assigned to a placeholder (ghost) contact on the org chart of a lead or opportunity.","GhostContactAccountAccountRoleRelation":"Role assigned to a ghost contact on the org chart of an account.","ImportMappingMask":"Saved mapping of import file columns to fields, reused when importing records of the same entity.","Lead":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","LeadOppty":"Lead or opportunity, with the fields both kinds of sales records share.","LeadOpptyAccountRelation":"Link between a lead or opportunity and an account, marking the primary account.","LeadOpptyContactGroupRelation":"Group of contacts on the org chart of a lead or opportunity.","LeadOpptyContactRelation":"Link between a lead or opportunity and a contact, with the contact's sales roles and org-chart position.","LeadOpptyContactSalesRoleRelation":"Sales role assigned to a contact on a lead or opportunity.","LeadOpptyKPI":"KPI event of a lead or opportunity (e.g. created, qualified, won, lost or moved to another step), used in activity reporting.","LeadOpptyProjectRelation":"Link between a lead or opportunity and a project it is part of.","LeadOpptySharingClientRelation":"Share of a lead or opportunity with an individual user, with the access level granted.","LeadOpptySharingSalesUnitRelation":"Share of a lead or opportunity with a sales unit, with the access level granted.","LeadOpptyStepCheckListRelation":"Completion of a step checklist item on a lead, opportunity or quote, with the activity, email, note or document that fulfils it.","LeadOpptyType":"Lead type or opportunity type, with the settings both kinds of sales record types share.","LeadProcess":"Lead process: the ordered steps that leads of its lead types move through.","LeadType":"Lead type that classifies leads and defines their forms and the lead process they follow.","MasterRight":"User role in the space that defines which features, records and pipelines its users can access.","Media":"Recording of a call or meeting with its transcription and AI summary, attached to a call, task or appointment.","Memo":"Internal message written by a user and linked to records, which other users can comment on.","MemoComment":"Comment a user wrote on a memo.","Message":"Email or memo, with the fields both kinds of messages share.","MessageRelation":"Link between a message (email or memo) and a record such as an account, contact, lead or opportunity.","MessageSharingClientRelation":"Share of a message (email or memo) with an individual user.","MessageSharingSalesUnitRelation":"Share of a message (email or memo) with a sales unit.","Note":"Note a user wrote on a record such as an account, contact, lead, opportunity, project or quote.","OnlineForm":"Submission (response) of an online form, with the answers and the records it created or updated.","OnlineFormActivityLogLine":"One step logged while processing an online form submission.","OnlineFormDataExRelation":"Option selected in a multi-select checkbox field of an online form submission.","OnlineFormTypeEmailRelation":"Email that sent an online form link to a recipient, with the record it was sent on.","OnlineFormRelation":"Link between an online form submission and a record it created or updated.","OnlineFormType":"Online form definition: the fields and settings of a web form whose submissions create or update records.","OnlineFormStyle":"Visual style (colors, fonts, layout) that can be applied to online forms.","Opportunity":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","OpportunityType":"Opportunity type that classifies opportunities and defines their forms (edit, qualify, won and lost).","OpptyProductRelation":"Product line item on an opportunity or quote, with its quantity, price and discount.","OpptyProductRelationDataExRelation":"Option selected in a multi-select checkbox field of a product line item.","OpptyProductRelationType":"Line-item type that defines the form of product line items on opportunities and quotes; paired with a product type.","OpptyRecurrence":"Recurrence rule that creates new copies of an opportunity on a schedule, e.g. for repeat deals once it is won or lost.","OpptyRevenueSchedule":"Revenue schedule that splits the value of an opportunity into periods.","OpptyRevenueSchedulePeriod":"One period of an opportunity revenue schedule, with its date and amount.","OpptyProductRelationRevenueSchedule":"Revenue schedule that splits the amount of a product line item into periods.","OpptyProductRelationRevenueSchedulePeriod":"One period of a product line item revenue schedule, with its date and amount.","Order":"Order of a subscription (e.g. a purchase, renewal or license change) with its items, amounts, tax and payment status.","OrderItem":"Line item of an order: a product with its quantity, price and subtotal, and the monthly recurring revenue it adds.","OrderTempDataItem":"Line item of an order that waits for online payment in checkout, with its product, quantity and price.","OrderHistory":"Status change recorded in the history of an order.","OrderRelatedDocument":"Payment confirmation or credit note issued for an order.","OrderTempData":"Order started in checkout that waits for online payment; it becomes a regular order once the payment succeeds.","Payment":"Payment received for an order, with the payment method, the amount paid and the transaction reference.","PaymentTerm":"Payment term of orders, such as immediate payment or payment within a number of days, in a given language.","PaymentAdditionalData":"Instructions given at checkout that are carried out once the order is paid, such as the invoice recipients, new subscription admins and the users to invite after a space reset.","ParentAccountRelationType":"Kind of parent-child relationship between accounts (e.g. parent company and subsidiary), with a label for each side.","Phone":"Phone number connected to Coevera for calls, text messages or WhatsApp, either personal to a user or shared by the company.","AllowedQuoteType":"Quote type that a user role is allowed to use.","Quote":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","QuoteAccountRelation":"Link between a quote and an account, marking the primary account.","QuoteContactRelation":"Link between a quote and a contact, marking the primary contact.","QuoteDataExRelation":"Option selected in a multi-select checkbox field of a quote.","QuoteKPI":"KPI event of a quote (e.g. created, accepted, archived or moved to another step), used in activity reporting.","QuoteProcess":"Quote process: the ordered steps that quotes of its quote types move through.","QuoteSharingClientRelation":"Share of a quote with an individual user, with the access level granted.","QuoteSharingSalesUnitRelation":"Share of a quote with a sales unit, with the access level granted.","QuoteType":"Quote type that classifies quotes and defines their forms and the quote process they follow.","LeadOpptyDataExRelation":"Option selected in a multi-select checkbox field of a lead or opportunity.","AccountDataExRelation":"Option selected in a multi-select checkbox field of an account; there is one link per selected option.","ContactDataExRelation":"Option selected in a multi-select checkbox field of a contact; there is one link per selected option.","ActivityDataExRelation":"Option selected in a multi-select checkbox field of a task or an appointment; there is one link per selected option.","ProductDataExRelation":"Option selected in a multi-select checkbox field of a product.","ProjectDataExRelation":"Option selected in a multi-select checkbox field of a project.","Pipeline":"Sales pipeline: the ordered steps that opportunities of its opportunity types move through.","Process":"Automatizer process: an automated workflow that runs its actions when its trigger fires (a record event, a schedule or a webhook).","ProcessActivityLog":"One run of an Automatizer process, with its status, timing and the steps it took.","ProcessActivityLogLine":"One step logged in a run of an Automatizer process.","ProcessScheduledAction":"Action of an Automatizer process that is waiting to run for a record at a scheduled time.","ProcessTemplate":"Ready-made Automatizer process offered in the template gallery as a starting point for new processes.","Solution":"Canvas that groups related automation tools (Automatizer processes, email sequences, online forms) and tracks their status and activity.","SolutionTemplate":"Ready-made solution offered in the template gallery as a starting point for new solutions.","ProcessChangeOwnerLog":"Round-robin progress of an Automatizer change-owner action, recording which users have already been assigned a record so the next record goes to the next user.","Product":"Product or service in the catalog that can be added as a line item to opportunities and quotes.","ProductType":"Product type that classifies products and defines their form.","ProductCategory":"Category in the hierarchy of the product catalog.","ProductPipelineRelation":"Pipeline in which a product can be added as a line item.","ProductPriceList":"Price list with product prices per currency, applied to opportunities and quotes while it is active.","ProductPriceListPrice":"Price of a product in one currency within a price list.","Profile":"Saved view of an app screen (e.g. leads, accounts or opportunities) with its filter, layout and charts, optionally shared with others.","ProfileRelation":"Record added explicitly to a static saved view (profile).","ProfileDraft":"Unsaved changes a user made to the view of an app screen, kept until they are saved or discarded.","ProfileSharingClientRelation":"Share of a saved view (profile) with an individual user.","ProfileSharingSalesUnitRelation":"Share of a saved view (profile) with a sales unit.","Project":"Project delivered for an account or run internally, with its objectives, activities and progress.","ProjectKPI":"KPI event of a project (its completion), used in activity reporting.","ProjectContactRelation":"Link between a project and a contact, marking the primary contact.","ProjectObjective":"Objective (goal) of a project.","ProjectType":"Project type that classifies projects and defines their form and icon.","ProjectSharingClientRelation":"Share of a project with an individual user, with the access level granted.","ProjectSharingSalesUnitRelation":"Share of a project with a sales unit, with the access level granted.","Report":"Saved report or dashboard with its settings, sharing and delivery schedule.","ReportFolder":"Folder that organizes reports; folders can be nested.","ReportSharingClientRelation":"Share of a report with an individual user, with the access level granted.","ReportSharingSalesUnitRelation":"Share of a report with a sales unit, with the access level granted.","ReportSchedule":"Schedule that emails a report to its recipients at regular intervals.","RevenueRecognition":"Revenue of an opportunity product for one period of its revenue schedule, used in revenue reporting.","SalesRole":"Role a contact plays in a deal (e.g. decision maker), assigned to contacts on leads and opportunities.","SalesUnit":"Sales unit (team) in the organization hierarchy that users belong to.","SalesUnitClientRelation":"Membership of a user in a sales unit, as a member or manager.","Step":"Step of an opportunity pipeline, lead process or quote process that records move through.","StepChecklist":"Checklist item of a pipeline step, such as logging an activity, filling a field or attaching a document.","StepChecklistSalesRoleRelation":"Sales role that a step checklist item is shown to.","Tag":"Label that users attach to records such as accounts, contacts or opportunities to categorize them.","TagRelation":"Assignment of a tag to a record.","Target":"Sales target set for a user or a group of users for a period, measured by a chosen metric.","TargetRelation":"Link between a group target and a user target that rolls up into it.","Task":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","TaskRecurrence":"Recurrence rule that defines when the next occurrences of a recurring task are created.","TaskReminder":"Reminder a user set to be notified about a task at a given time.","TaskSharingClientRelation":"Share of a task with an individual user, with the access level granted.","TaskSharingSalesUnitRelation":"Share of a task with a sales unit, with the access level granted.","TaskType":"Task type that classifies tasks and defines their form and icon.","TextMessage":"Message sent or received in a text message conversation or in an AI assistant chat.","TextMessageConversation":"Text message conversation between a Coevera phone number and an external phone number.","TextMessageConversationRelations":"Link between a text message conversation and a record such as an account, contact, lead or opportunity.","Translation":"Translation of a field name, dropdown option or form text into the supported languages.","Type":"Data type of fields, defining the kind of value, its validation and whether fields of the type can be filtered, sorted or grouped.","Timeframe":"Time a lead or opportunity has spent in a pipeline step.","UnsubscribedPhone":"Phone number that opted out of receiving text messages.","UseCase":"Use case showing how a feature can be used, offered to users in the in-app learning content.","Webresource":"Web page embedded in the app for records of an entity, with its URL filled from the record's field values.","Webhook":"Registered webhook urls will be called when subscribed events occur with access level corresponding to the Webhook owner.","WebhookEvent":"Event a webhook subscribes to; the webhook is called whenever the event occurs.","Country":"Country that can be selected in billing addresses, with its states, sales region and the Coevera supplier that bills customers there.","TeamSpaceClient":"Membership of a user profile in a space.","CpTeamSpaceClient":"Membership of a user in a space, as listed for subscription administrators, who can disable it.","CpCallLog":"Call, text message or transcription made through built-in calling, with its phone numbers, status and cost.","UserProfile":"User account that signs in to Coevera and can be a member of several spaces and subscriptions.","UserRole":"Customer portal role that grants a user rights such as order, subscription, partner and user management.","TeamSpace":"Space of a subscription: a separate Coevera CRM instance with its own users, data and settings.","TeamSpaceRegion":"Hosting region where spaces run, with its address, email domain and whether new trial spaces can be created in it.","TeamSpaceProperty":"Named property of a space, such as its time zone, first day of the week or attachment size limit.","TeamSpaceClientSetting":"Integration settings of a user in a space, such as the connected mailbox and the contact, calendar and task sync with Google, Microsoft 365 or Exchange.","SapiUser":"API user that signs in with a user name and password, as a standard or administrator API user, optionally limited to one space and to allowed source IP addresses.","CpCalling":"Calling credit of a subscription, spent on calls, recordings and AI services such as transcription.","Subscription":"Customer subscription to Coevera: the contract that covers its spaces, licenses, billing and orders.","SubscriptionRepresentative":"Coevera staff member who can be assigned to subscriptions as their sales representative.","SubscriptionSDR":"Coevera staff member who can be assigned to subscriptions as their sales development representative.","Partner":"Partner company (e.g. affiliate, agent or consultant) that refers customer subscriptions and earns commission on their orders.","Supplier":"Company that sells subscriptions and issues orders and invoices, with its legal imprint.","State":"State or province of a country that can be selected in billing addresses.","AutomationHubApp":"App (vendor) in the Automation Hub that provides integrations, with its website and support links.","AutomationHubCategory":"Category that groups items in the Automation Hub.","AutomationHubItem":"Integration or add-on offered in the Automation Hub that can be enabled in a space.","SubscriptionHubItem":"Automation Hub item included in a subscription.","TeamPipelineHubItem":"Automation Hub item installed in a space, with its status and configuration.","TeamPipelineHubItemBase":"Automation Hub item installed in a space, of any integration kind, with its status and configuration.","HowTo":"Help resource (video, article or support link) shown in the app for a feature area, with view statistics.","Storylane":"Interactive product demo offered to users in the in-app learning content.","ReleaseNote":"Release note announcing a product change to users, who can react to it.","CpClient":"User account identified by its sign-in email, with the spaces it is a member of.","CpProfile":"Saved view of a customer portal screen that belongs to a Coevera staff member, with its view settings.","CpProduct":"Product of the Coevera catalog that subscriptions can purchase, such as licenses or add-ons, with its prices in EUR, USD and GBP and its renewal terms.","PurchasedProduct":"Product a subscription has purchased, such as licenses or an add-on, with its quantity, price, status and the period it is active.","SubscriptionNotification":"Notification email sent to the recipients of a subscription under a notification setting, such as a renewal reminder or an overdue payment notice for an order.","CpActivity":"Entry of the customer portal audit trail: an action a user performed, the module it was performed in and the space it concerned.","ActivityDetail":"Detail of a customer portal audit trail entry: the record that was changed, the operation performed and the data before and after the change.","NotificationSetting":"Automatic email notification to customers, sent before a subscription renewal or when an order payment is overdue.","FormView":"Variant of the form of an account, contact, lead or opportunity type that hides or colors selected fields; owned by a user and can be shared.","FormViewSharingClientRelation":"Sharing of a form view with a user, as a watcher or an editor.","FormViewSharingSalesUnitRelation":"Sharing of a form view with a sales unit, as a watcher or an editor.","InterfacePreview":"Layout of how records of an entity type are previewed in the app: preview and card fields, detail tabs, widgets and charts.","SpaceSetting":"Space-wide setting stored as a named value, such as the working days, custom entity names or the revenue schedule configuration."}},"upload_source":{"type":"integer","description":"Editor the uploaded image is embedded in, such as an email template or rich-text content. Empty for files that are not embedded images.\n\nInteger enum value: 1 - EmailTemplate, 2 - RichTextEditor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Image embedded in an email template.","2":"Image embedded in rich-text content, such as a note or description."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"content":{"type":"string","format":"binary","example":"blob","description":"Data content of the object."},"template_entity_api_name":{"type":"string","example":"string","description":"API name of the custom entity the template renders. Set only when template_entity_name is \"CustomEntity\"; otherwise empty."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"CompanyEmail":{"description":"Shared company mailbox connected to the space that users can send emails from, such as a sales or support address.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email":{"type":"string","example":"string","description":"Email address of the company mailbox (the From address)."},"enabled":{"type":"boolean","example":false,"description":"False when the mailbox is disabled (either by the user or because the underlying feature is not available); true otherwise."},"error_code":{"type":"integer","format":"int32","example":1,"description":"Error code recorded for the mailbox; empty when healthy. Set on integration failures or when the user disables the integration."},"name":{"type":"string","example":"string","description":"Display name of the company email account, shown in the UI."},"picture_url":{"type":"string","example":"string","description":"URL of the avatar image used as the sender picture for emails sent from this account."},"service_type":{"type":"integer","description":"Email service the company email account is connected through and sends from: Microsoft 365, Google or SendGrid.\n\nInteger enum value: 1 - O365Email, 2 - GoogleEmail, 3 - SendGrid","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Microsoft 365 (Outlook) account.","2":"Google (Gmail / Google Workspace) account.","3":"SendGrid account."}},"settings":{"type":"object","description":"Provider-specific configuration for the mailbox (e.g. parse_subdomain for SendGrid)."},"token":{"type":"string","format":"binary","example":"blob","description":"OAuth/secret credentials for the mailbox. Read-only and only returned to service-to-service callers; setting via the public API is not supported."},"features":{"type":"array","items":{"type":"integer","description":"Integer enum value: 1 - CanSyncBounces, 2 - CanSyncIncoming","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Bounced emails are detected and recorded.","2":"Incoming emails, such as replies, are synchronized into Coevera."}},"description":"List of capabilities supported by the underlying email service (e.g. CanSyncBounces, CanSyncIncoming)."},"mailbox_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Stable UUID derived from the mailbox address and service type, used to correlate the company email account with its integration settings entry."}},"required":["is_delete_protected","id","enabled","name","service_type","features"]},"Contact":{"description":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"contact_type":{"type":"string","format":"uri","description":"Contact type that classifies this contact. Contact types are configurable per team space and drive which form, fields and pipelines apply.\n\nRelated ContactType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ContactType' for its fields."},"currency_exchange_rates_list":{"type":"string","format":"uri","description":"Currency exchange rate list used to convert monetary fields linked to this contact. Empty to inherit the team space default.\n\nRelated CurrencyExchangeRatesList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRatesList' for its fields."},"owner":{"type":"string","format":"uri","description":"Sales user who owns this contact.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"picture":{"type":"string","format":"uri","description":"Profile picture associated with the contact.\n\nRelated CloudObject record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObject' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit this contact is assigned to. Determines which team members can see the record under unit-based sharing.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"address":{"type":"string","example":"string","description":"Street address of the contact."},"city":{"type":"string","example":"string","description":"City of the contact address."},"comments":{"type":"string","example":"string","description":"Free-form notes describing the contact."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type assigned to this contact."},"country":{"type":"string","example":"string","description":"Country of the contact address."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this contact."},"email1":{"type":"string","example":"string","description":"Primary email address of the contact. Used as default recipient for emails sent from Coevera."},"email2":{"type":"string","example":"string","description":"Additional email address."},"email3":{"type":"string","example":"string","description":"Additional email address."},"email4":{"type":"string","example":"string","description":"Additional email address."},"email5":{"type":"string","example":"string","description":"Additional email address."},"first_name":{"type":"string","example":"string","description":"Given name of the contact."},"gender":{"type":"integer","description":"Gender of the contact: Unknown when not specified, Male, Female or NonBinary.\n\nInteger enum value: 0 - Unknown, 1 - Male, 2 - Female, 3 - NonBinary","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Gender is not specified.","1":"The contact is male.","2":"The contact is female.","3":"The contact is non-binary."}},"is_archived":{"type":"boolean","example":false,"description":"True when the contact has been archived. Archived contacts remain readable but are hidden from active lists and cannot be edited until reactivated."},"last_name":{"type":"string","example":"string","description":"Family name of the contact."},"middle_name":{"type":"string","example":"string","description":"Middle name of the contact, if applicable."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact owner."},"phone1":{"type":"string","example":"string","description":"Primary phone number of the contact. Used as default target for click-to-call."},"phone2":{"type":"string","example":"string","description":"Additional phone number."},"phone3":{"type":"string","example":"string","description":"Additional phone number."},"phone4":{"type":"string","example":"string","description":"Additional phone number."},"phone5":{"type":"string","example":"string","description":"Additional phone number."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the profile picture document."},"position":{"type":"string","example":"string","description":"Job title or position of the contact."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name used when the contact is not linked to an actual Account record. Lets integrators capture the company without creating a separate Account."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"state_province":{"type":"string","example":"string","description":"State or province of the contact address."},"title":{"type":"string","example":"string","description":"Honorific or salutation prefix (e.g. Mr., Ms., Dr.) shown before the name."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"zip_code":{"type":"string","example":"string","description":"ZIP or postal code of the contact address."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"formatted_name":{"type":"string","example":"string","description":"Display version of the contact name (title, first, middle, last). Used in lists and references."},"social_media":{"type":"string","format":"uri","description":"Social network profiles linked to this contact (e.g. LinkedIn, Facebook).\n\nRelated ContactSocialRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ContactSocialRelation' for its fields."},"primary_account":{"type":"string","format":"uri","description":"Primary account this contact belongs to. Set automatically when the contact has an account relation marked as primary.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"account_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ContactAccountRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ContactAccountRelation' for its fields."},"description":"Accounts this contact is linked to. Each link records the role and position the contact has at the related account."},"sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related ContactSharingSalesUnitRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ContactSharingSalesUnitRelation' for its fields."},"description":"Sales units that have been granted shared access to this contact. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related ContactSharingClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ContactSharingClientRelation' for its fields."},"description":"Users that have been granted shared access to this contact. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Documents linked to this contact."},"exchange_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"gapi_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"o365_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"is_favorite":{"type":"boolean","example":false,"description":"True when the current authenticated user has marked this contact as favorite. Per-user."},"primary_account_account_roles":{"type":"array","items":{"type":"string","format":"uri","description":"Related ContactAccountAccountRoleRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ContactAccountAccountRoleRelation' for its fields."},"description":"Roles of Contact in his primary Account."},"primary_account_position":{"type":"string","example":"string","description":"Job position of Contact in his primary Account."},"account_position":{"type":"string","example":"string","description":"Job position of Contact in his primary Account or quick account position if Contact has no primary Account."},"is_unsubscribed":{"type":"boolean","example":false,"description":"If account has any unsubscribed email."},"tags":{"type":"array","items":{"type":"string","format":"uri","description":"Related TagRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TagRelation' for its fields."},"description":"Tag labels applied to this contact."},"static_profiles":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProfileRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProfileRelation' for its fields."},"description":"Saved view profiles this contact currently matches."},"primary_account_relationship":{"type":"string","example":"string","description":"Org chart relationship of Contact in his primary Account."},"modified_by_user":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent modification made by an end user (excluding system changes). Read-only; computed by Coevera."}},"required":["is_delete_protected","id","contact_type","owner","unit","owner_id","formatted_name","is_favorite"]},"createContactInput":{"description":"Field values of a new Contact record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"picture":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Profile picture associated with the contact.\n\nRelated CloudObject record; see 'createCloudObjectInput' for its fields."},"address":{"type":"string","example":"string","description":"Street address of the contact."},"city":{"type":"string","example":"string","description":"City of the contact address."},"comments":{"type":"string","example":"string","description":"Free-form notes describing the contact."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type assigned to this contact."},"country":{"type":"string","example":"string","description":"Country of the contact address."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this contact."},"email1":{"type":"string","example":"string","description":"Primary email address of the contact. Used as default recipient for emails sent from Coevera."},"email2":{"type":"string","example":"string","description":"Additional email address."},"email3":{"type":"string","example":"string","description":"Additional email address."},"email4":{"type":"string","example":"string","description":"Additional email address."},"email5":{"type":"string","example":"string","description":"Additional email address."},"first_name":{"type":"string","example":"string","description":"Given name of the contact."},"gender":{"type":"integer","description":"Gender of the contact: Unknown when not specified, Male, Female or NonBinary.\n\nInteger enum value: 0 - Unknown, 1 - Male, 2 - Female, 3 - NonBinary","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Gender is not specified.","1":"The contact is male.","2":"The contact is female.","3":"The contact is non-binary."}},"is_archived":{"type":"boolean","example":false,"description":"True when the contact has been archived. Archived contacts remain readable but are hidden from active lists and cannot be edited until reactivated."},"last_name":{"type":"string","example":"string","description":"Family name of the contact."},"middle_name":{"type":"string","example":"string","description":"Middle name of the contact, if applicable."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact owner."},"phone1":{"type":"string","example":"string","description":"Primary phone number of the contact. Used as default target for click-to-call."},"phone2":{"type":"string","example":"string","description":"Additional phone number."},"phone3":{"type":"string","example":"string","description":"Additional phone number."},"phone4":{"type":"string","example":"string","description":"Additional phone number."},"phone5":{"type":"string","example":"string","description":"Additional phone number."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the profile picture document."},"position":{"type":"string","example":"string","description":"Job title or position of the contact."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name used when the contact is not linked to an actual Account record. Lets integrators capture the company without creating a separate Account."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"state_province":{"type":"string","example":"string","description":"State or province of the contact address."},"title":{"type":"string","example":"string","description":"Honorific or salutation prefix (e.g. Mr., Ms., Dr.) shown before the name."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"zip_code":{"type":"string","example":"string","description":"ZIP or postal code of the contact address."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"social_media":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactSocialRelation record."}},"description":"Social network profiles linked to this contact (e.g. LinkedIn, Facebook).\n\nRelated ContactSocialRelation record; see 'createContactSocialRelationInput' for its fields."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactAccountRelation record."}},"description":"Related ContactAccountRelation record; see 'createContactAccountRelationInput' for its fields."},"description":"Accounts this contact is linked to. Each link records the role and position the contact has at the related account."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactSharingSalesUnitRelation record."}},"description":"Related ContactSharingSalesUnitRelation record; see 'createContactSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this contact. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactSharingClientRelation record."}},"description":"Related ContactSharingClientRelation record; see 'createContactSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this contact. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Documents linked to this contact."},"primary_account_account_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactAccountAccountRoleRelation record."}},"description":"Related ContactAccountAccountRoleRelation record; see 'createContactAccountAccountRoleRelationInput' for its fields."},"description":"Roles of Contact in his primary Account."},"account_position":{"type":"string","example":"string","description":"Job position of Contact in his primary Account or quick account position if Contact has no primary Account."},"is_unsubscribed":{"type":"boolean","example":false,"description":"If account has any unsubscribed email."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'createTagRelationInput' for its fields."},"description":"Tag labels applied to this contact."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'createProfileRelationInput' for its fields."},"description":"Saved view profiles this contact currently matches."},"primary_account_relationship":{"type":"string","example":"string","description":"Org chart relationship of Contact in his primary Account."}},"required":["owner_id"]},"updateContactInput":{"description":"Field values to change on a Contact record; fields left out keep their values.","properties":{"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"picture":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Profile picture associated with the contact.\n\nRelated CloudObject record; see 'updateCloudObjectInput' for its fields."},"address":{"type":"string","example":"string","description":"Street address of the contact."},"city":{"type":"string","example":"string","description":"City of the contact address."},"comments":{"type":"string","example":"string","description":"Free-form notes describing the contact."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type assigned to this contact."},"country":{"type":"string","example":"string","description":"Country of the contact address."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this contact."},"email1":{"type":"string","example":"string","description":"Primary email address of the contact. Used as default recipient for emails sent from Coevera."},"email2":{"type":"string","example":"string","description":"Additional email address."},"email3":{"type":"string","example":"string","description":"Additional email address."},"email4":{"type":"string","example":"string","description":"Additional email address."},"email5":{"type":"string","example":"string","description":"Additional email address."},"first_name":{"type":"string","example":"string","description":"Given name of the contact."},"gender":{"type":"integer","description":"Gender of the contact: Unknown when not specified, Male, Female or NonBinary.\n\nInteger enum value: 0 - Unknown, 1 - Male, 2 - Female, 3 - NonBinary","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Gender is not specified.","1":"The contact is male.","2":"The contact is female.","3":"The contact is non-binary."}},"is_archived":{"type":"boolean","example":false,"description":"True when the contact has been archived. Archived contacts remain readable but are hidden from active lists and cannot be edited until reactivated."},"last_name":{"type":"string","example":"string","description":"Family name of the contact."},"middle_name":{"type":"string","example":"string","description":"Middle name of the contact, if applicable."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact owner."},"phone1":{"type":"string","example":"string","description":"Primary phone number of the contact. Used as default target for click-to-call."},"phone2":{"type":"string","example":"string","description":"Additional phone number."},"phone3":{"type":"string","example":"string","description":"Additional phone number."},"phone4":{"type":"string","example":"string","description":"Additional phone number."},"phone5":{"type":"string","example":"string","description":"Additional phone number."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the profile picture document."},"position":{"type":"string","example":"string","description":"Job title or position of the contact."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name used when the contact is not linked to an actual Account record. Lets integrators capture the company without creating a separate Account."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"state_province":{"type":"string","example":"string","description":"State or province of the contact address."},"title":{"type":"string","example":"string","description":"Honorific or salutation prefix (e.g. Mr., Ms., Dr.) shown before the name."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"zip_code":{"type":"string","example":"string","description":"ZIP or postal code of the contact address."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"social_media":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactSocialRelation record."}},"description":"Social network profiles linked to this contact (e.g. LinkedIn, Facebook).\n\nRelated ContactSocialRelation record; see 'updateContactSocialRelationInput' for its fields."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactAccountRelation record."}},"description":"Related ContactAccountRelation record; see 'updateContactAccountRelationInput' for its fields."},"description":"Accounts this contact is linked to. Each link records the role and position the contact has at the related account."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactSharingSalesUnitRelation record."}},"description":"Related ContactSharingSalesUnitRelation record; see 'updateContactSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this contact. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactSharingClientRelation record."}},"description":"Related ContactSharingClientRelation record; see 'updateContactSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this contact. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this contact."},"exchange_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"gapi_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"o365_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"primary_account_account_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactAccountAccountRoleRelation record."}},"description":"Related ContactAccountAccountRoleRelation record; see 'updateContactAccountAccountRoleRelationInput' for its fields."},"description":"Roles of Contact in his primary Account."},"account_position":{"type":"string","example":"string","description":"Job position of Contact in his primary Account or quick account position if Contact has no primary Account."},"is_unsubscribed":{"type":"boolean","example":false,"description":"If account has any unsubscribed email."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this contact."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'updateProfileRelationInput' for its fields."},"description":"Saved view profiles this contact currently matches."},"primary_account_relationship":{"type":"string","example":"string","description":"Org chart relationship of Contact in his primary Account."}}},"batchContactInput":{"description":"Field values of a Contact record to create, or to update when its id is set.","properties":{"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"picture":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Profile picture associated with the contact.\n\nRelated CloudObject record; see 'updateCloudObjectInput' for its fields."},"address":{"type":"string","example":"string","description":"Street address of the contact."},"city":{"type":"string","example":"string","description":"City of the contact address."},"comments":{"type":"string","example":"string","description":"Free-form notes describing the contact."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type assigned to this contact."},"country":{"type":"string","example":"string","description":"Country of the contact address."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this contact."},"email1":{"type":"string","example":"string","description":"Primary email address of the contact. Used as default recipient for emails sent from Coevera."},"email2":{"type":"string","example":"string","description":"Additional email address."},"email3":{"type":"string","example":"string","description":"Additional email address."},"email4":{"type":"string","example":"string","description":"Additional email address."},"email5":{"type":"string","example":"string","description":"Additional email address."},"first_name":{"type":"string","example":"string","description":"Given name of the contact."},"gender":{"type":"integer","description":"Gender of the contact: Unknown when not specified, Male, Female or NonBinary.\n\nInteger enum value: 0 - Unknown, 1 - Male, 2 - Female, 3 - NonBinary","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Gender is not specified.","1":"The contact is male.","2":"The contact is female.","3":"The contact is non-binary."}},"is_archived":{"type":"boolean","example":false,"description":"True when the contact has been archived. Archived contacts remain readable but are hidden from active lists and cannot be edited until reactivated."},"last_name":{"type":"string","example":"string","description":"Family name of the contact."},"middle_name":{"type":"string","example":"string","description":"Middle name of the contact, if applicable."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact owner."},"phone1":{"type":"string","example":"string","description":"Primary phone number of the contact. Used as default target for click-to-call."},"phone2":{"type":"string","example":"string","description":"Additional phone number."},"phone3":{"type":"string","example":"string","description":"Additional phone number."},"phone4":{"type":"string","example":"string","description":"Additional phone number."},"phone5":{"type":"string","example":"string","description":"Additional phone number."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the profile picture document."},"position":{"type":"string","example":"string","description":"Job title or position of the contact."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name used when the contact is not linked to an actual Account record. Lets integrators capture the company without creating a separate Account."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"state_province":{"type":"string","example":"string","description":"State or province of the contact address."},"title":{"type":"string","example":"string","description":"Honorific or salutation prefix (e.g. Mr., Ms., Dr.) shown before the name."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"zip_code":{"type":"string","example":"string","description":"ZIP or postal code of the contact address."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"social_media":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactSocialRelation record."}},"description":"Social network profiles linked to this contact (e.g. LinkedIn, Facebook).\n\nRelated ContactSocialRelation record; see 'updateContactSocialRelationInput' for its fields."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactAccountRelation record."}},"description":"Related ContactAccountRelation record; see 'updateContactAccountRelationInput' for its fields."},"description":"Accounts this contact is linked to. Each link records the role and position the contact has at the related account."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactSharingSalesUnitRelation record."}},"description":"Related ContactSharingSalesUnitRelation record; see 'updateContactSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this contact. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactSharingClientRelation record."}},"description":"Related ContactSharingClientRelation record; see 'updateContactSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this contact. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this contact."},"exchange_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"gapi_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"o365_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"primary_account_account_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactAccountAccountRoleRelation record."}},"description":"Related ContactAccountAccountRoleRelation record; see 'updateContactAccountAccountRoleRelationInput' for its fields."},"description":"Roles of Contact in his primary Account."},"account_position":{"type":"string","example":"string","description":"Job position of Contact in his primary Account or quick account position if Contact has no primary Account."},"is_unsubscribed":{"type":"boolean","example":false,"description":"If account has any unsubscribed email."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this contact."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'updateProfileRelationInput' for its fields."},"description":"Saved view profiles this contact currently matches."},"primary_account_relationship":{"type":"string","example":"string","description":"Org chart relationship of Contact in his primary Account."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ContactAccountAccountRoleRelation":{"description":"Role assigned to a contact at an account, on the link between the contact and the account.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_role":{"type":"string","format":"uri","description":"Role assigned to the contact at the account.\n\nRelated AccountRole record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AccountRole' for its fields."},"contact_account_relation":{"type":"string","format":"uri","description":"Contact-account link this role assignment belongs to.\n\nRelated ContactAccountRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ContactAccountRelation' for its fields."},"account_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the role assigned to the contact at the account."},"contact_account_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact-account link."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","account_role","contact_account_relation","account_role_id","contact_account_relation_id"]},"createContactAccountAccountRoleRelationInput":{"description":"Field values of a new ContactAccountAccountRoleRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact_account_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactAccountRelation record."}},"description":"Contact-account link this role assignment belongs to.\n\nRelated ContactAccountRelation record; see 'createContactAccountRelationInput' for its fields."},"account_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the role assigned to the contact at the account."},"contact_account_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact-account link."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["contact_account_relation","account_role_id","contact_account_relation_id"]},"updateContactAccountAccountRoleRelationInput":{"description":"Field values to change on a ContactAccountAccountRoleRelation record; fields left out keep their values.","properties":{"contact_account_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactAccountRelation record."}},"description":"Contact-account link this role assignment belongs to.\n\nRelated ContactAccountRelation record; see 'updateContactAccountRelationInput' for its fields."},"account_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the role assigned to the contact at the account."},"contact_account_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact-account link."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchContactAccountAccountRoleRelationInput":{"description":"Field values of a ContactAccountAccountRoleRelation record to create, or to update when its id is set.","properties":{"contact_account_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactAccountRelation record."}},"description":"Contact-account link this role assignment belongs to.\n\nRelated ContactAccountRelation record; see 'updateContactAccountRelationInput' for its fields."},"account_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the role assigned to the contact at the account."},"contact_account_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact-account link."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ContactAccountRelation":{"description":"Link between a contact and an account they work for, with their position and their place in the account org chart.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account the contact is linked to.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact linked to the account.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account the contact is linked to."},"comment":{"type":"string","example":"string","description":"Free-form note describing this contact-account link."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to the account."},"is_assistant":{"type":"boolean","example":false,"description":"True when the contact acts as an assistant on the account org chart. Assistant relations cannot have child relations."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"is_sibling":{"type":"boolean","example":false,"description":"True when the contact is a sibling node on the account org chart (no parent/child reporting line)."},"position":{"type":"string","example":"string","description":"Job title or position the contact holds at the account."},"relationship":{"type":"integer","description":"Org-chart relationship of the contact within the account hierarchy.\n\nInteger enum value: 0 - NoRelationship, 1 - Weak, 2 - Moderate, 3 - Strong","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"No relationship is recorded.","1":"The relationship is weak.","2":"The relationship is of moderate strength.","3":"The relationship is strong."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_roles":{"type":"array","items":{"type":"string","format":"uri","description":"Related ContactAccountAccountRoleRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ContactAccountAccountRoleRelation' for its fields."},"description":"Roles the contact holds within the linked account."}},"required":["is_delete_protected","id","account","contact","account_id","contact_id","is_primary"]},"createContactAccountRelationInput":{"description":"Field values of a new ContactAccountRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account the contact is linked to."},"comment":{"type":"string","example":"string","description":"Free-form note describing this contact-account link."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to the account."},"is_assistant":{"type":"boolean","example":false,"description":"True when the contact acts as an assistant on the account org chart. Assistant relations cannot have child relations."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"is_sibling":{"type":"boolean","example":false,"description":"True when the contact is a sibling node on the account org chart (no parent/child reporting line)."},"position":{"type":"string","example":"string","description":"Job title or position the contact holds at the account."},"relationship":{"type":"integer","description":"Org-chart relationship of the contact within the account hierarchy.\n\nInteger enum value: 0 - NoRelationship, 1 - Weak, 2 - Moderate, 3 - Strong","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"No relationship is recorded.","1":"The relationship is weak.","2":"The relationship is of moderate strength.","3":"The relationship is strong."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactAccountAccountRoleRelation record."}},"description":"Related ContactAccountAccountRoleRelation record; see 'createContactAccountAccountRoleRelationInput' for its fields."},"description":"Roles the contact holds within the linked account."}},"required":["account_id","contact_id","is_primary"]},"updateContactAccountRelationInput":{"description":"Field values to change on a ContactAccountRelation record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account the contact is linked to."},"comment":{"type":"string","example":"string","description":"Free-form note describing this contact-account link."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to the account."},"is_assistant":{"type":"boolean","example":false,"description":"True when the contact acts as an assistant on the account org chart. Assistant relations cannot have child relations."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"is_sibling":{"type":"boolean","example":false,"description":"True when the contact is a sibling node on the account org chart (no parent/child reporting line)."},"position":{"type":"string","example":"string","description":"Job title or position the contact holds at the account."},"relationship":{"type":"integer","description":"Org-chart relationship of the contact within the account hierarchy.\n\nInteger enum value: 0 - NoRelationship, 1 - Weak, 2 - Moderate, 3 - Strong","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"No relationship is recorded.","1":"The relationship is weak.","2":"The relationship is of moderate strength.","3":"The relationship is strong."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactAccountAccountRoleRelation record."}},"description":"Related ContactAccountAccountRoleRelation record; see 'updateContactAccountAccountRoleRelationInput' for its fields."},"description":"Roles the contact holds within the linked account."}}},"batchContactAccountRelationInput":{"description":"Field values of a ContactAccountRelation record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account the contact is linked to."},"comment":{"type":"string","example":"string","description":"Free-form note describing this contact-account link."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to the account."},"is_assistant":{"type":"boolean","example":false,"description":"True when the contact acts as an assistant on the account org chart. Assistant relations cannot have child relations."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"is_sibling":{"type":"boolean","example":false,"description":"True when the contact is a sibling node on the account org chart (no parent/child reporting line)."},"position":{"type":"string","example":"string","description":"Job title or position the contact holds at the account."},"relationship":{"type":"integer","description":"Org-chart relationship of the contact within the account hierarchy.\n\nInteger enum value: 0 - NoRelationship, 1 - Weak, 2 - Moderate, 3 - Strong","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"No relationship is recorded.","1":"The relationship is weak.","2":"The relationship is of moderate strength.","3":"The relationship is strong."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactAccountAccountRoleRelation record."}},"description":"Related ContactAccountAccountRoleRelation record; see 'updateContactAccountAccountRoleRelationInput' for its fields."},"description":"Roles the contact holds within the linked account."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ContactDataExRelation":{"description":"Option selected in a multi-select checkbox field of a contact; there is one link per selected option.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact":{"type":"string","format":"uri","description":"Contact on which the option is selected.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"data":{"type":"string","format":"uri","description":"Option selected in the multi-select field; it belongs to the data set given by data_set_id.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact on which the option is selected."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","contact","data","contact_id","data_id","data_set_id"]},"ContactKPI":{"description":"Recorded KPI event of a contact, such as its creation, archiving or the first and last email sent, used in KPI reports.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User who triggered the KPI event (e.g. created or archived the contact, sent the first email).\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact this KPI event relates to.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"owner":{"type":"string","format":"uri","description":"Contact owner at the time the KPI event occurred.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the triggering user belonged to at the time of the event.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact this KPI event relates to."},"kpi":{"type":"integer","description":"KPI metric this event represents: CreateContact, FirstEmailSent, LastEmailSent, Archive or LastModified.\n\nInteger enum value: 1 - CreateContact, 2 - LastEmailSent, 3 - FirstEmailSent, 4 - Archive, 5 - LastModified","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The contact was created.","2":"The most recent email was sent to the contact.","3":"The first email was sent to the contact.","4":"The contact was archived; the entry is removed when it is unarchived.","5":"The contact was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","contact","owner","contact_id","kpi","owner_id"]},"createContactKPIInput":{"description":"Field values of a new ContactKPI record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact this KPI event relates to."},"kpi":{"type":"integer","description":"KPI metric this event represents: CreateContact, FirstEmailSent, LastEmailSent, Archive or LastModified.\n\nInteger enum value: 1 - CreateContact, 2 - LastEmailSent, 3 - FirstEmailSent, 4 - Archive, 5 - LastModified","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The contact was created.","2":"The most recent email was sent to the contact.","3":"The first email was sent to the contact.","4":"The contact was archived; the entry is removed when it is unarchived.","5":"The contact was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["contact_id","kpi","owner_id"]},"updateContactKPIInput":{"description":"Field values to change on a ContactKPI record; fields left out keep their values.","properties":{"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact this KPI event relates to."},"kpi":{"type":"integer","description":"KPI metric this event represents: CreateContact, FirstEmailSent, LastEmailSent, Archive or LastModified.\n\nInteger enum value: 1 - CreateContact, 2 - LastEmailSent, 3 - FirstEmailSent, 4 - Archive, 5 - LastModified","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The contact was created.","2":"The most recent email was sent to the contact.","3":"The first email was sent to the contact.","4":"The contact was archived; the entry is removed when it is unarchived.","5":"The contact was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchContactKPIInput":{"description":"Field values of a ContactKPI record to create, or to update when its id is set.","properties":{"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact this KPI event relates to."},"kpi":{"type":"integer","description":"KPI metric this event represents: CreateContact, FirstEmailSent, LastEmailSent, Archive or LastModified.\n\nInteger enum value: 1 - CreateContact, 2 - LastEmailSent, 3 - FirstEmailSent, 4 - Archive, 5 - LastModified","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The contact was created.","2":"The most recent email was sent to the contact.","3":"The first email was sent to the contact.","4":"The contact was archived; the entry is removed when it is unarchived.","5":"The contact was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ContactRelation":{"description":"Link between two related contacts, such as colleagues or family members; its labels give the kind of relationship.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact1":{"type":"string","format":"uri","description":"One side of the contact-to-contact relationship.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"contact2":{"type":"string","format":"uri","description":"Other side of the contact-to-contact relationship.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"contact1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the first related contact."},"contact2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the second related contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","contact1","contact2","contact1_id","contact2_id"]},"createContactRelationInput":{"description":"Field values of a new ContactRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the first related contact."},"contact2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the second related contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["contact1_id","contact2_id"]},"updateContactRelationInput":{"description":"Field values to change on a ContactRelation record; fields left out keep their values.","properties":{"contact1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the first related contact."},"contact2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the second related contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchContactRelationInput":{"description":"Field values of a ContactRelation record to create, or to update when its id is set.","properties":{"contact1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the first related contact."},"contact2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the second related contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ContactRelationLabel":{"description":"Relationship type assigned to a link between two contacts, such as Spouse or Colleague.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact_relation":{"type":"string","format":"uri","description":"Contact relationship being labelled.\n\nRelated ContactRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ContactRelation' for its fields."},"contact_relation_type":{"type":"string","format":"uri","description":"Type of the relationship (e.g. spouse, colleague).\n\nRelated ContactRelationType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ContactRelationType' for its fields."},"contact_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact relationship."},"contact_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the relationship type."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","contact_relation","contact_relation_type","contact_relation_id","contact_relation_type_id"]},"createContactRelationLabelInput":{"description":"Field values of a new ContactRelationLabel record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactRelation record."}},"description":"Contact relationship being labelled.\n\nRelated ContactRelation record; see 'createContactRelationInput' for its fields."},"contact_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact relationship."},"contact_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the relationship type."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["contact_relation","contact_relation_id","contact_relation_type_id"]},"updateContactRelationLabelInput":{"description":"Field values to change on a ContactRelationLabel record; fields left out keep their values.","properties":{"contact_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactRelation record."}},"description":"Contact relationship being labelled.\n\nRelated ContactRelation record; see 'updateContactRelationInput' for its fields."},"contact_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact relationship."},"contact_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the relationship type."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchContactRelationLabelInput":{"description":"Field values of a ContactRelationLabel record to create, or to update when its id is set.","properties":{"contact_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ContactRelation record."}},"description":"Contact relationship being labelled.\n\nRelated ContactRelation record; see 'updateContactRelationInput' for its fields."},"contact_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact relationship."},"contact_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the relationship type."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ContactRelationType":{"description":"Kind of relationship that can be assigned to a link between two contacts, such as Spouse or Colleague, with its display color.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the relationship type label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"label":{"type":"string","example":"string","description":"Display label of the contact-to-contact relationship type (e.g. Spouse, Colleague)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","color"]},"createContactRelationTypeInput":{"description":"Field values of a new ContactRelationType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the relationship type label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"label":{"type":"string","example":"string","description":"Display label of the contact-to-contact relationship type (e.g. Spouse, Colleague)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["color"]},"updateContactRelationTypeInput":{"description":"Field values to change on a ContactRelationType record; fields left out keep their values.","properties":{"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the relationship type label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"label":{"type":"string","example":"string","description":"Display label of the contact-to-contact relationship type (e.g. Spouse, Colleague)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchContactRelationTypeInput":{"description":"Field values of a ContactRelationType record to create, or to update when its id is set.","properties":{"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the relationship type label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"label":{"type":"string","example":"string","description":"Display label of the contact-to-contact relationship type (e.g. Spouse, Colleague)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ContactSharingClientRelation":{"description":"Sharing of a contact with a user, as a watcher or an editor.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User the contact is shared with.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact being shared.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared contact."},"role":{"type":"integer","description":"Access the sharing gives the user on the contact: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","client","contact","client_id","contact_id"]},"createContactSharingClientRelationInput":{"description":"Field values of a new ContactSharingClientRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared contact."},"role":{"type":"integer","description":"Access the sharing gives the user on the contact: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["client_id","contact_id"]},"updateContactSharingClientRelationInput":{"description":"Field values to change on a ContactSharingClientRelation record; fields left out keep their values.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared contact."},"role":{"type":"integer","description":"Access the sharing gives the user on the contact: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchContactSharingClientRelationInput":{"description":"Field values of a ContactSharingClientRelation record to create, or to update when its id is set.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared contact."},"role":{"type":"integer","description":"Access the sharing gives the user on the contact: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ContactSharingSalesUnitRelation":{"description":"Sharing of a contact with a sales unit, as a watcher or an editor.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact":{"type":"string","format":"uri","description":"Contact being shared.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the contact is shared with.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared contact."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the contact: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","contact","unit","contact_id","unit_id"]},"createContactSharingSalesUnitRelationInput":{"description":"Field values of a new ContactSharingSalesUnitRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared contact."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the contact: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["contact_id","unit_id"]},"updateContactSharingSalesUnitRelationInput":{"description":"Field values to change on a ContactSharingSalesUnitRelation record; fields left out keep their values.","properties":{"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared contact."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the contact: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchContactSharingSalesUnitRelationInput":{"description":"Field values of a ContactSharingSalesUnitRelation record to create, or to update when its id is set.","properties":{"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared contact."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the contact: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ContactSocialRelation":{"description":"Social network profiles of a contact, such as their LinkedIn, Twitter or Facebook profiles.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity. Must match with Contact id.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"angellist_url":{"type":"string","example":"string","description":"AngelList profile URL of the contact."},"crunchbase_url":{"type":"string","example":"string","description":"Crunchbase profile URL of the contact."},"disqus_url":{"type":"string","example":"string","description":"Disqus profile URL of the contact."},"facebook_id":{"type":"string","example":"string","description":"Facebook profile id of the contact."},"facebook_url":{"type":"string","example":"string","description":"Facebook profile URL of the contact."},"flickr_url":{"type":"string","example":"string","description":"Flickr profile URL of the contact."},"foursquare_url":{"type":"string","example":"string","description":"Foursquare profile URL of the contact."},"google_id":{"type":"string","example":"string","description":"Google profile id of the contact."},"google_plus_url":{"type":"string","example":"string","description":"Google+ profile URL of the contact."},"gravatar_url":{"type":"string","example":"string","description":"Gravatar profile URL of the contact."},"klout_url":{"type":"string","example":"string","description":"Klout profile URL of the contact."},"linkedin_id":{"type":"string","example":"string","description":"LinkedIn profile id of the contact."},"linkedin_url":{"type":"string","example":"string","description":"LinkedIn profile URL of the contact."},"pinterest_url":{"type":"string","example":"string","description":"Pinterest profile URL of the contact."},"quora_url":{"type":"string","example":"string","description":"Quora profile URL of the contact."},"reddit_url":{"type":"string","example":"string","description":"Reddit profile URL of the contact."},"skype_url":{"type":"string","example":"string","description":"Skype contact URL or username of the contact."},"slideshare_url":{"type":"string","example":"string","description":"SlideShare profile URL of the contact."},"twitter_id":{"type":"string","example":"string","description":"Twitter (X) user id of the contact."},"twitter_url":{"type":"string","example":"string","description":"Twitter (X) profile URL of the contact."},"vimeo_url":{"type":"string","example":"string","description":"Vimeo profile URL of the contact."},"wordpress_url":{"type":"string","example":"string","description":"WordPress site URL of the contact."},"xing_url":{"type":"string","example":"string","description":"XING profile URL of the contact."},"yahoo_url":{"type":"string","example":"string","description":"Yahoo profile URL of the contact."},"yelp_url":{"type":"string","example":"string","description":"Yelp profile URL of the contact."},"youtube_url":{"type":"string","example":"string","description":"YouTube channel URL of the contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id"]},"createContactSocialRelationInput":{"description":"Field values of a new ContactSocialRelation record.","properties":{"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity. Must match with Contact id.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"angellist_url":{"type":"string","example":"string","description":"AngelList profile URL of the contact."},"crunchbase_url":{"type":"string","example":"string","description":"Crunchbase profile URL of the contact."},"disqus_url":{"type":"string","example":"string","description":"Disqus profile URL of the contact."},"facebook_id":{"type":"string","example":"string","description":"Facebook profile id of the contact."},"facebook_url":{"type":"string","example":"string","description":"Facebook profile URL of the contact."},"flickr_url":{"type":"string","example":"string","description":"Flickr profile URL of the contact."},"foursquare_url":{"type":"string","example":"string","description":"Foursquare profile URL of the contact."},"google_id":{"type":"string","example":"string","description":"Google profile id of the contact."},"google_plus_url":{"type":"string","example":"string","description":"Google+ profile URL of the contact."},"gravatar_url":{"type":"string","example":"string","description":"Gravatar profile URL of the contact."},"klout_url":{"type":"string","example":"string","description":"Klout profile URL of the contact."},"linkedin_id":{"type":"string","example":"string","description":"LinkedIn profile id of the contact."},"linkedin_url":{"type":"string","example":"string","description":"LinkedIn profile URL of the contact."},"pinterest_url":{"type":"string","example":"string","description":"Pinterest profile URL of the contact."},"quora_url":{"type":"string","example":"string","description":"Quora profile URL of the contact."},"reddit_url":{"type":"string","example":"string","description":"Reddit profile URL of the contact."},"skype_url":{"type":"string","example":"string","description":"Skype contact URL or username of the contact."},"slideshare_url":{"type":"string","example":"string","description":"SlideShare profile URL of the contact."},"twitter_id":{"type":"string","example":"string","description":"Twitter (X) user id of the contact."},"twitter_url":{"type":"string","example":"string","description":"Twitter (X) profile URL of the contact."},"vimeo_url":{"type":"string","example":"string","description":"Vimeo profile URL of the contact."},"wordpress_url":{"type":"string","example":"string","description":"WordPress site URL of the contact."},"xing_url":{"type":"string","example":"string","description":"XING profile URL of the contact."},"yahoo_url":{"type":"string","example":"string","description":"Yahoo profile URL of the contact."},"yelp_url":{"type":"string","example":"string","description":"Yelp profile URL of the contact."},"youtube_url":{"type":"string","example":"string","description":"YouTube channel URL of the contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["id"]},"updateContactSocialRelationInput":{"description":"Field values to change on a ContactSocialRelation record; fields left out keep their values.","properties":{"angellist_url":{"type":"string","example":"string","description":"AngelList profile URL of the contact."},"crunchbase_url":{"type":"string","example":"string","description":"Crunchbase profile URL of the contact."},"disqus_url":{"type":"string","example":"string","description":"Disqus profile URL of the contact."},"facebook_id":{"type":"string","example":"string","description":"Facebook profile id of the contact."},"facebook_url":{"type":"string","example":"string","description":"Facebook profile URL of the contact."},"flickr_url":{"type":"string","example":"string","description":"Flickr profile URL of the contact."},"foursquare_url":{"type":"string","example":"string","description":"Foursquare profile URL of the contact."},"google_id":{"type":"string","example":"string","description":"Google profile id of the contact."},"google_plus_url":{"type":"string","example":"string","description":"Google+ profile URL of the contact."},"gravatar_url":{"type":"string","example":"string","description":"Gravatar profile URL of the contact."},"klout_url":{"type":"string","example":"string","description":"Klout profile URL of the contact."},"linkedin_id":{"type":"string","example":"string","description":"LinkedIn profile id of the contact."},"linkedin_url":{"type":"string","example":"string","description":"LinkedIn profile URL of the contact."},"pinterest_url":{"type":"string","example":"string","description":"Pinterest profile URL of the contact."},"quora_url":{"type":"string","example":"string","description":"Quora profile URL of the contact."},"reddit_url":{"type":"string","example":"string","description":"Reddit profile URL of the contact."},"skype_url":{"type":"string","example":"string","description":"Skype contact URL or username of the contact."},"slideshare_url":{"type":"string","example":"string","description":"SlideShare profile URL of the contact."},"twitter_id":{"type":"string","example":"string","description":"Twitter (X) user id of the contact."},"twitter_url":{"type":"string","example":"string","description":"Twitter (X) profile URL of the contact."},"vimeo_url":{"type":"string","example":"string","description":"Vimeo profile URL of the contact."},"wordpress_url":{"type":"string","example":"string","description":"WordPress site URL of the contact."},"xing_url":{"type":"string","example":"string","description":"XING profile URL of the contact."},"yahoo_url":{"type":"string","example":"string","description":"Yahoo profile URL of the contact."},"yelp_url":{"type":"string","example":"string","description":"Yelp profile URL of the contact."},"youtube_url":{"type":"string","example":"string","description":"YouTube channel URL of the contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchContactSocialRelationInput":{"description":"Field values of a ContactSocialRelation record to create, or to update when its id is set.","properties":{"angellist_url":{"type":"string","example":"string","description":"AngelList profile URL of the contact."},"crunchbase_url":{"type":"string","example":"string","description":"Crunchbase profile URL of the contact."},"disqus_url":{"type":"string","example":"string","description":"Disqus profile URL of the contact."},"facebook_id":{"type":"string","example":"string","description":"Facebook profile id of the contact."},"facebook_url":{"type":"string","example":"string","description":"Facebook profile URL of the contact."},"flickr_url":{"type":"string","example":"string","description":"Flickr profile URL of the contact."},"foursquare_url":{"type":"string","example":"string","description":"Foursquare profile URL of the contact."},"google_id":{"type":"string","example":"string","description":"Google profile id of the contact."},"google_plus_url":{"type":"string","example":"string","description":"Google+ profile URL of the contact."},"gravatar_url":{"type":"string","example":"string","description":"Gravatar profile URL of the contact."},"klout_url":{"type":"string","example":"string","description":"Klout profile URL of the contact."},"linkedin_id":{"type":"string","example":"string","description":"LinkedIn profile id of the contact."},"linkedin_url":{"type":"string","example":"string","description":"LinkedIn profile URL of the contact."},"pinterest_url":{"type":"string","example":"string","description":"Pinterest profile URL of the contact."},"quora_url":{"type":"string","example":"string","description":"Quora profile URL of the contact."},"reddit_url":{"type":"string","example":"string","description":"Reddit profile URL of the contact."},"skype_url":{"type":"string","example":"string","description":"Skype contact URL or username of the contact."},"slideshare_url":{"type":"string","example":"string","description":"SlideShare profile URL of the contact."},"twitter_id":{"type":"string","example":"string","description":"Twitter (X) user id of the contact."},"twitter_url":{"type":"string","example":"string","description":"Twitter (X) profile URL of the contact."},"vimeo_url":{"type":"string","example":"string","description":"Vimeo profile URL of the contact."},"wordpress_url":{"type":"string","example":"string","description":"WordPress site URL of the contact."},"xing_url":{"type":"string","example":"string","description":"XING profile URL of the contact."},"yahoo_url":{"type":"string","example":"string","description":"Yahoo profile URL of the contact."},"yelp_url":{"type":"string","example":"string","description":"Yelp profile URL of the contact."},"youtube_url":{"type":"string","example":"string","description":"YouTube channel URL of the contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ContactType":{"description":"Configurable category of contacts that defines the form layout and settings used for contacts of that type.","properties":{"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"form_edit_api":{"type":"object","description":"Typed, read-only view of a form layout of this type: form_edit_api mirrors the edit form (form_edit), form_lost_api the form shown when archiving as lost (form_lost)."},"can_change_readonly":{"type":"boolean","example":false,"description":"False for types whose read-only setting is fixed, such as the recurrent appointment type; true otherwise."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the edit form layout used by the UI when creating or editing contacts of this type. Contains tabs, sections, and field placement. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the contact type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["has_draft","is_delete_protected","form_edit_api","id","is_readonly","name","settings"]},"createContactTypeInput":{"description":"Field values of a new ContactType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the edit form layout used by the UI when creating or editing contacts of this type. Contains tabs, sections, and field placement. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the contact type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_readonly","name","settings"]},"updateContactTypeInput":{"description":"Field values to change on a ContactType record; fields left out keep their values.","properties":{"form_edit":{"type":"object","description":"JSON definition of the edit form layout used by the UI when creating or editing contacts of this type. Contains tabs, sections, and field placement. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the contact type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchContactTypeInput":{"description":"Field values of a ContactType record to create, or to update when its id is set.","properties":{"form_edit":{"type":"object","description":"JSON definition of the edit form layout used by the UI when creating or editing contacts of this type. Contains tabs, sections, and field placement. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the contact type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"CountryCrm":{"description":"Country offered in address fields; a new country value on a record must match one of these countries.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"use_lang":{"type":"boolean","example":false,"description":"Whether the country name is a localization key to be translated into the user language rather than displayed verbatim."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","name"]},"createCountryCrmInput":{"description":"Field values of a new CountryCrm record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"use_lang":{"type":"boolean","example":false,"description":"Whether the country name is a localization key to be translated into the user language rather than displayed verbatim."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["name"]},"updateCountryCrmInput":{"description":"Field values to change on a CountryCrm record; fields left out keep their values.","properties":{"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"use_lang":{"type":"boolean","example":false,"description":"Whether the country name is a localization key to be translated into the user language rather than displayed verbatim."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchCountryCrmInput":{"description":"Field values of a CountryCrm record to create, or to update when its id is set.","properties":{"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"use_lang":{"type":"boolean","example":false,"description":"Whether the country name is a localization key to be translated into the user language rather than displayed verbatim."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Currency":{"description":"Currency used for monetary values in the space, converted from the base currency by exchange rates.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"code":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"is_base":{"type":"boolean","example":false,"description":"True for the space's base currency. There is exactly one base currency per space and it cannot be deleted.","readOnly":true},"symbol":{"type":"string","example":"string","description":"Display symbol of the currency (e.g. \"$\", \"€\"). Used when formatting amounts in the UI."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"currency_exchange_rates":{"type":"array","items":{"type":"string","format":"uri","description":"Related CurrencyExchangeRate record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRate' for its fields."},"description":"Exchange rates configured for this currency, one per exchange rate list (effective period)."}},"required":["is_delete_protected","id","code","currency_exchange_rates"]},"createCurrencyInput":{"description":"Field values of a new Currency record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"code":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"symbol":{"type":"string","example":"string","description":"Display symbol of the currency (e.g. \"$\", \"€\"). Used when formatting amounts in the UI."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"currency_exchange_rates":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CurrencyExchangeRate record."}},"description":"Related CurrencyExchangeRate record; see 'createCurrencyExchangeRateInput' for its fields."},"description":"Exchange rates configured for this currency, one per exchange rate list (effective period)."}},"required":["code","currency_exchange_rates"]},"updateCurrencyInput":{"description":"Field values to change on a Currency record; fields left out keep their values.","properties":{"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"currency_exchange_rates":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CurrencyExchangeRate record."}},"description":"Related CurrencyExchangeRate record; see 'updateCurrencyExchangeRateInput' for its fields."},"description":"Exchange rates configured for this currency, one per exchange rate list (effective period)."}}},"batchCurrencyInput":{"description":"Field values of a Currency record to create, or to update when its id is set.","properties":{"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"currency_exchange_rates":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CurrencyExchangeRate record."}},"description":"Related CurrencyExchangeRate record; see 'updateCurrencyExchangeRateInput' for its fields."},"description":"Exchange rates configured for this currency, one per exchange rate list (effective period)."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"CurrencyExchangeRate":{"description":"Exchange rate of a currency against the base currency within an exchange rate list.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"currency_exchange_rate_list":{"type":"string","format":"uri","description":"Effective period (exchange rate list) this rate belongs to.\n\nRelated CurrencyExchangeRatesList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRatesList' for its fields."},"currency":{"type":"string","format":"uri","description":"Currency the exchange rate applies to. Cannot be the base currency.\n\nRelated Currency record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Currency' for its fields."},"currency_exchange_rate_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the exchange rate list (effective period) this rate belongs to."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency the exchange rate applies to. Cannot be the base currency."},"exchange_rate":{"type":"number","format":"double","example":"4.32","description":"Multiplier for converting an amount in the base currency into this currency. Must be greater than zero."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","currency_exchange_rate_list","currency","currency_exchange_rate_list_id","currency_id"]},"createCurrencyExchangeRateInput":{"description":"Field values of a new CurrencyExchangeRate record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"currency_exchange_rate_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the exchange rate list (effective period) this rate belongs to."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency the exchange rate applies to. Cannot be the base currency."},"exchange_rate":{"type":"number","format":"double","example":"4.32","description":"Multiplier for converting an amount in the base currency into this currency. Must be greater than zero."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["currency_exchange_rate_list_id","currency_id"]},"updateCurrencyExchangeRateInput":{"description":"Field values to change on a CurrencyExchangeRate record; fields left out keep their values.","properties":{"currency_exchange_rate_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the exchange rate list (effective period) this rate belongs to."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency the exchange rate applies to. Cannot be the base currency."},"exchange_rate":{"type":"number","format":"double","example":"4.32","description":"Multiplier for converting an amount in the base currency into this currency. Must be greater than zero."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchCurrencyExchangeRateInput":{"description":"Field values of a CurrencyExchangeRate record to create, or to update when its id is set.","properties":{"currency_exchange_rate_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the exchange rate list (effective period) this rate belongs to."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency the exchange rate applies to. Cannot be the base currency."},"exchange_rate":{"type":"number","format":"double","example":"4.32","description":"Multiplier for converting an amount in the base currency into this currency. Must be greater than zero."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"CurrencyExchangeRatesList":{"description":"Set of exchange rates, one per currency, that applies from a given date until the next list takes effect.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"valid_from":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Date the exchange rate list becomes effective. The list valid for any given moment is the most recent one whose valid_from is in the past. Time component is truncated to midnight on set."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"currency_exchange_rates":{"type":"array","items":{"type":"string","format":"uri","description":"Related CurrencyExchangeRate record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRate' for its fields."},"description":"Exchange rates configured in this list — one row per non-base currency in the space."}},"required":["is_delete_protected","id","valid_from","currency_exchange_rates"]},"createCurrencyExchangeRatesListInput":{"description":"Field values of a new CurrencyExchangeRatesList record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"valid_from":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Date the exchange rate list becomes effective. The list valid for any given moment is the most recent one whose valid_from is in the past. Time component is truncated to midnight on set."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"currency_exchange_rates":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CurrencyExchangeRate record."}},"description":"Related CurrencyExchangeRate record; see 'createCurrencyExchangeRateInput' for its fields."},"description":"Exchange rates configured in this list — one row per non-base currency in the space."}},"required":["valid_from","currency_exchange_rates"]},"updateCurrencyExchangeRatesListInput":{"description":"Field values to change on a CurrencyExchangeRatesList record; fields left out keep their values.","properties":{"valid_from":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Date the exchange rate list becomes effective. The list valid for any given moment is the most recent one whose valid_from is in the past. Time component is truncated to midnight on set."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"currency_exchange_rates":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CurrencyExchangeRate record."}},"description":"Related CurrencyExchangeRate record; see 'updateCurrencyExchangeRateInput' for its fields."},"description":"Exchange rates configured in this list — one row per non-base currency in the space."}}},"batchCurrencyExchangeRatesListInput":{"description":"Field values of a CurrencyExchangeRatesList record to create, or to update when its id is set.","properties":{"valid_from":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Date the exchange rate list becomes effective. The list valid for any given moment is the most recent one whose valid_from is in the past. Time component is truncated to midnight on set."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"currency_exchange_rates":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CurrencyExchangeRate record."}},"description":"Related CurrencyExchangeRate record; see 'updateCurrencyExchangeRateInput' for its fields."},"description":"Exchange rates configured in this list — one row per non-base currency in the space."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"CustomEntity":{"description":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"currency_exchange_rates_list":{"type":"string","format":"uri","description":"Currency exchange rate list used to convert monetary fields linked to this record. Empty to inherit the team space default.\n\nRelated CurrencyExchangeRatesList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRatesList' for its fields."},"owner":{"type":"string","format":"uri","description":"Sales user who owns this custom entity record.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"type":{"type":"string","format":"uri","description":"Custom entity type that classifies this record. Custom entity types are configurable per team space and define the schema (fields and form) of the records.\n\nRelated CustomEntityType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntityType' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit this record is assigned to. Determines which team members can see the record under unit-based sharing.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this record."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales user who owns the custom entity record."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"table_name":{"type":"string","example":"string","description":"Discriminator identifying which custom entity type this record belongs to. Read-only; matches CustomEntityType.entity_api_name and is used as the entity name in REST and GraphQL queries.","readOnly":true},"type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity type."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related CustomEntitySharingSalesUnitRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntitySharingSalesUnitRelation' for its fields."},"description":"Sales units that have been granted shared access to this custom entity record. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related CustomEntitySharingClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntitySharingClientRelation' for its fields."},"description":"Users that have been granted shared access to this custom entity record. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Documents linked to this custom entity record."},"static_profiles":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProfileRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProfileRelation' for its fields."},"description":"Saved view profiles this custom entity record currently matches."},"tags":{"type":"array","items":{"type":"string","format":"uri","description":"Related TagRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TagRelation' for its fields."},"description":"Tag labels applied to this custom entity record."},"is_favorite":{"type":"boolean","example":false,"description":"True when the current authenticated user has marked this record as favorite. Per-user."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","owner","type","unit","owner_id","table_name","is_favorite"]},"createCustomEntityInput":{"description":"Field values of a new CustomEntity record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this record."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales user who owns the custom entity record."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity type."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CustomEntitySharingSalesUnitRelation record."}},"description":"Related CustomEntitySharingSalesUnitRelation record; see 'createCustomEntitySharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this custom entity record. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CustomEntitySharingClientRelation record."}},"description":"Related CustomEntitySharingClientRelation record; see 'createCustomEntitySharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this custom entity record. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Documents linked to this custom entity record."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'createProfileRelationInput' for its fields."},"description":"Saved view profiles this custom entity record currently matches."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'createTagRelationInput' for its fields."},"description":"Tag labels applied to this custom entity record."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["owner_id"]},"updateCustomEntityInput":{"description":"Field values to change on a CustomEntity record; fields left out keep their values.","properties":{"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this record."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales user who owns the custom entity record."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity type."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CustomEntitySharingSalesUnitRelation record."}},"description":"Related CustomEntitySharingSalesUnitRelation record; see 'updateCustomEntitySharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this custom entity record. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CustomEntitySharingClientRelation record."}},"description":"Related CustomEntitySharingClientRelation record; see 'updateCustomEntitySharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this custom entity record. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this custom entity record."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'updateProfileRelationInput' for its fields."},"description":"Saved view profiles this custom entity record currently matches."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this custom entity record."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchCustomEntityInput":{"description":"Field values of a CustomEntity record to create, or to update when its id is set.","properties":{"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this record."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales user who owns the custom entity record."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity type."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CustomEntitySharingSalesUnitRelation record."}},"description":"Related CustomEntitySharingSalesUnitRelation record; see 'updateCustomEntitySharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this custom entity record. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CustomEntitySharingClientRelation record."}},"description":"Related CustomEntitySharingClientRelation record; see 'updateCustomEntitySharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this custom entity record. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this custom entity record."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'updateProfileRelationInput' for its fields."},"description":"Saved view profiles this custom entity record currently matches."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this custom entity record."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"CustomEntityDataExRelation":{"description":"Option selected in a multi-select checkbox field of a custom entity record; there is one link per selected option.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"custom_entity":{"type":"string","format":"uri","description":"Custom entity record on which the option is selected.\n\nRelated CustomEntity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntity' for its fields."},"data":{"type":"string","format":"uri","description":"Option selected in the multi-select field; it belongs to the data set given by data_set_id.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity record on which the option is selected."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","custom_entity","data","custom_entity_id","data_id","data_set_id"]},"createCustomEntityDataExRelationInput":{"description":"Field values of a new CustomEntityDataExRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity record on which the option is selected."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["custom_entity_id","data_id","data_set_id"]},"updateCustomEntityDataExRelationInput":{"description":"Field values to change on a CustomEntityDataExRelation record; fields left out keep their values.","properties":{"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity record on which the option is selected."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchCustomEntityDataExRelationInput":{"description":"Field values of a CustomEntityDataExRelation record to create, or to update when its id is set.","properties":{"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity record on which the option is selected."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"CustomEntityRelation":{"description":"Custom relation that links records of two entities through a pair of relation fields, one on each side.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"field_1":{"type":"string","format":"uri","description":"Lookup field on the first side of the custom relation: the lookup field the relation was created from.\n\nRelated Field record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Field' for its fields."},"field_2":{"type":"string","format":"uri","description":"Lookup field on the second side of the custom relation, created automatically on the linked entity.\n\nRelated Field record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Field' for its fields."},"entity_filter_1":{"type":"object","description":"Condition limiting which records of the field_1 entity can be selected in field_2, as a JSON object conforming to the `FieldFilter` type; empty for no restriction."},"entity_filter_2":{"type":"object","description":"Condition limiting which records of the field_2 entity can be selected in field_1, as a JSON object conforming to the `FieldFilter` type; empty for no restriction."},"field_1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lookup field on the first side of the custom relation."},"field_2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lookup field on the second side of the custom relation."},"has_is_primary":{"type":"boolean","example":false,"description":"When true, one of the records linked through the relation can be marked as primary. Cannot be switched back to false once enabled."},"show_related_1":{"type":"boolean","example":false,"description":"When true, field_2 offers only records related to the record being edited. Not supported yet; must be false."},"show_related_2":{"type":"boolean","example":false,"description":"When true, field_1 offers only records related to the record being edited (e.g. the contacts of its account)."},"show_tab_1":{"type":"boolean","example":false,"description":"When true, the records linked through field_1 are shown in a tab named tab_name_1."},"show_tab_2":{"type":"boolean","example":false,"description":"When true, the records linked through field_2 are shown in a tab named tab_name_2."},"tab_name_1":{"type":"string","example":"string","description":"Name of the tab that shows the records linked through field_1."},"tab_name_2":{"type":"string","example":"string","description":"Name of the tab that shows the records linked through field_2."},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","has_draft","id","field_1","field_2","field_1_id","field_2_id","show_tab_1","show_tab_2","tab_name_1","tab_name_2"]},"CustomEntityRelationData":{"description":"Link between two records made through a custom relation, such as an account linked to a custom entity record.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_1":{"type":"string","format":"uri","description":"Account on the field_1 side of this custom relation link; empty when that record is of another type.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"account_2":{"type":"string","format":"uri","description":"Account on the field_2 side of this custom relation link; empty when that record is of another type.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"appointment_1":{"type":"string","format":"uri","description":"Appointment on the field_1 side of this custom relation link; empty when that record is of another type.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"task_1":{"type":"string","format":"uri","description":"Task on the field_1 side of this custom relation link; empty when that record is of another type.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"appointment_2":{"type":"string","format":"uri","description":"Appointment on the field_2 side of this custom relation link; empty when that record is of another type.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"task_2":{"type":"string","format":"uri","description":"Task on the field_2 side of this custom relation link; empty when that record is of another type.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"client_1":{"type":"string","format":"uri","description":"User on the field_1 side of this custom relation link; empty when that record is of another type.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"client_2":{"type":"string","format":"uri","description":"User on the field_2 side of this custom relation link; empty when that record is of another type.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"contact_1":{"type":"string","format":"uri","description":"Contact on the field_1 side of this custom relation link; empty when that record is of another type.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"contact_2":{"type":"string","format":"uri","description":"Contact on the field_2 side of this custom relation link; empty when that record is of another type.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"custom_entity_1":{"type":"string","format":"uri","description":"Custom entity record on the field_1 side of this custom relation link; empty when that record is of another type.\n\nRelated CustomEntity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntity' for its fields."},"custom_entity_2":{"type":"string","format":"uri","description":"Custom entity record on the field_2 side of this custom relation link; empty when that record is of another type.\n\nRelated CustomEntity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntity' for its fields."},"custom_entity_relation":{"type":"string","format":"uri","description":"Custom relation (pair of lookup fields) this link belongs to.\n\nRelated CustomEntityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntityRelation' for its fields."},"lead_1":{"type":"string","format":"uri","description":"Lead on the field_1 side of this custom relation link; empty when that record is of another type.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty_1":{"type":"string","format":"uri","description":"Opportunity on the field_1 side of this custom relation link; empty when that record is of another type.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"lead_2":{"type":"string","format":"uri","description":"Lead on the field_2 side of this custom relation link; empty when that record is of another type.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty_2":{"type":"string","format":"uri","description":"Opportunity on the field_2 side of this custom relation link; empty when that record is of another type.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"oppty_product_relation_1":{"type":"string","format":"uri","description":"Opportunity product line on the field_1 side of this custom relation link; empty when that record is of another type.\n\nRelated OpptyProductRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyProductRelation' for its fields."},"oppty_product_relation_2":{"type":"string","format":"uri","description":"Opportunity product line on the field_2 side of this custom relation link; empty when that record is of another type.\n\nRelated OpptyProductRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyProductRelation' for its fields."},"product_1":{"type":"string","format":"uri","description":"Product on the field_1 side of this custom relation link; empty when that record is of another type.\n\nRelated Product record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Product' for its fields."},"product_2":{"type":"string","format":"uri","description":"Product on the field_2 side of this custom relation link; empty when that record is of another type.\n\nRelated Product record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Product' for its fields."},"project_1":{"type":"string","format":"uri","description":"Project on the field_1 side of this custom relation link; empty when that record is of another type.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"project_2":{"type":"string","format":"uri","description":"Project on the field_2 side of this custom relation link; empty when that record is of another type.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"quote_1":{"type":"string","format":"uri","description":"Quote on the field_1 side of this custom relation link; empty when that record is of another type.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"quote_2":{"type":"string","format":"uri","description":"Quote on the field_2 side of this custom relation link; empty when that record is of another type.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"account_1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account on the field_1 side of this custom relation link; empty when that record is of another type."},"account_2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account on the field_2 side of this custom relation link; empty when that record is of another type."},"activity_1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task on the field_1 side of this custom relation link; empty when that record is of another type."},"activity_2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task on the field_2 side of this custom relation link; empty when that record is of another type."},"client_1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user on the field_1 side of this custom relation link; empty when that record is of another type."},"client_2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user on the field_2 side of this custom relation link; empty when that record is of another type."},"contact_1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact on the field_1 side of this custom relation link; empty when that record is of another type."},"contact_2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact on the field_2 side of this custom relation link; empty when that record is of another type."},"custom_entity_1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity record on the field_1 side of this custom relation link; empty when that record is of another type."},"custom_entity_2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity record on the field_2 side of this custom relation link; empty when that record is of another type."},"custom_entity_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom relation this link belongs to."},"is_primary":{"type":"boolean","example":false,"description":"True when the linked record is the primary one among the records linked through the same lookup field; used when the custom relation has has_is_primary enabled."},"lead_oppty_1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity on the field_1 side of this custom relation link; empty when that record is of another type."},"lead_oppty_2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity on the field_2 side of this custom relation link; empty when that record is of another type."},"oppty_product_relation_1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity product line on the field_1 side of this custom relation link; empty when that record is of another type."},"oppty_product_relation_2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity product line on the field_2 side of this custom relation link; empty when that record is of another type."},"product_1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product on the field_1 side of this custom relation link; empty when that record is of another type."},"product_2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product on the field_2 side of this custom relation link; empty when that record is of another type."},"project_1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project on the field_1 side of this custom relation link; empty when that record is of another type."},"project_2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project on the field_2 side of this custom relation link; empty when that record is of another type."},"quote_1_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote on the field_1 side of this custom relation link; empty when that record is of another type."},"quote_2_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote on the field_2 side of this custom relation link; empty when that record is of another type."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","custom_entity_relation","custom_entity_relation_id"]},"CustomEntitySharingClientRelation":{"description":"Sharing of a custom entity record with a user, as a watcher or an editor.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User the custom entity record is shared with.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"custom_entity":{"type":"string","format":"uri","description":"Custom entity record being shared.\n\nRelated CustomEntity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntity' for its fields."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared custom entity record."},"role":{"type":"integer","description":"Access the sharing gives the user on the custom entity record: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","client","custom_entity","client_id","custom_entity_id"]},"createCustomEntitySharingClientRelationInput":{"description":"Field values of a new CustomEntitySharingClientRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared custom entity record."},"role":{"type":"integer","description":"Access the sharing gives the user on the custom entity record: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["client_id","custom_entity_id"]},"updateCustomEntitySharingClientRelationInput":{"description":"Field values to change on a CustomEntitySharingClientRelation record; fields left out keep their values.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared custom entity record."},"role":{"type":"integer","description":"Access the sharing gives the user on the custom entity record: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchCustomEntitySharingClientRelationInput":{"description":"Field values of a CustomEntitySharingClientRelation record to create, or to update when its id is set.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared custom entity record."},"role":{"type":"integer","description":"Access the sharing gives the user on the custom entity record: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"CustomEntitySharingSalesUnitRelation":{"description":"Sharing of a custom entity record with a sales unit, as a watcher or an editor.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"custom_entity":{"type":"string","format":"uri","description":"Custom entity record being shared.\n\nRelated CustomEntity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntity' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the custom entity record is shared with.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared custom entity record."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the custom entity record: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","custom_entity","unit","custom_entity_id","unit_id"]},"createCustomEntitySharingSalesUnitRelationInput":{"description":"Field values of a new CustomEntitySharingSalesUnitRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared custom entity record."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the custom entity record: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["custom_entity_id","unit_id"]},"updateCustomEntitySharingSalesUnitRelationInput":{"description":"Field values to change on a CustomEntitySharingSalesUnitRelation record; fields left out keep their values.","properties":{"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared custom entity record."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the custom entity record: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchCustomEntitySharingSalesUnitRelationInput":{"description":"Field values of a CustomEntitySharingSalesUnitRelation record to create, or to update when its id is set.","properties":{"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared custom entity record."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the custom entity record: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"CustomEntityType":{"description":"Configurable category of records of a custom entity that defines their form layout and settings; entityApiName names the custom entity.","properties":{"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"form_edit_api":{"type":"object","description":"Typed, read-only view of a form layout of this type: form_edit_api mirrors the edit form (form_edit), form_lost_api the form shown when archiving as lost (form_lost)."},"can_change_readonly":{"type":"boolean","example":false,"description":"False for types whose read-only setting is fixed, such as the recurrent appointment type; true otherwise."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing records of this custom entity type."},"is_readonly":{"type":"boolean","example":false,"description":"True when the custom entity type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type."},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"entity_api_name":{"type":"string","example":"string","description":"API name of the custom entity type (e.g. \"Vehicle\", \"Project_Phase\"). Used as the entity name when calling REST endpoints or selecting a concrete custom entity in GraphQL."}},"required":["has_draft","is_delete_protected","form_edit_api","id","form_edit","is_readonly","name","settings"]},"createCustomEntityTypeInput":{"description":"Field values of a new CustomEntityType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing records of this custom entity type."},"is_readonly":{"type":"boolean","example":false,"description":"True when the custom entity type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type."},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true}},"required":["form_edit","is_readonly","name","settings"]},"updateCustomEntityTypeInput":{"description":"Field values to change on a CustomEntityType record; fields left out keep their values.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing records of this custom entity type."},"is_readonly":{"type":"boolean","example":false,"description":"True when the custom entity type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type."}}},"batchCustomEntityTypeInput":{"description":"Field values of a CustomEntityType record to create, or to update when its id is set.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing records of this custom entity type."},"is_readonly":{"type":"boolean","example":false,"description":"True when the custom entity type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Data":{"description":"Option of a dropdown or multi-select field, one of the values users can choose from.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted."},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"allowed_by":{"type":"object","description":"For dependent dropdowns, the parent-field values this option is available for, as a JSON array of identifiers (option ids or enum names). Empty when always available."},"calc_value":{"type":"number","format":"double","example":4.32,"description":"Numeric value associated with the option, used in calculation formulas (e.g. score of a dropdown option)."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier of the data set this option belongs to. Shared by all options of a dropdown / radio / multiselect field.","readOnly":true},"option_name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the option within its data set; lower values appear first."},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"option_name_translations":{"type":"string","format":"binary","example":"blob","description":"Map of locale codes to translated option names (e.g. {\"en-US\": \"Hot\", \"de-DE\": \"Heiß\"}). Empty when no translations are defined."},"option_name_translated":{"type":"string","example":"string","description":"Option name in the current user's language, taken from option_name_translations. Empty when no translation is available for that language."}},"required":["is_delete_protected","has_draft","id","data_set_id","option_name","sort_order","option_name_translations","option_name_translated"]},"createDataInput":{"description":"Field values of a new Data record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"allowed_by":{"type":"object","description":"For dependent dropdowns, the parent-field values this option is available for, as a JSON array of identifiers (option ids or enum names). Empty when always available."},"calc_value":{"type":"number","format":"double","example":4.32,"description":"Numeric value associated with the option, used in calculation formulas (e.g. score of a dropdown option)."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier of the data set this option belongs to. Shared by all options of a dropdown / radio / multiselect field.","readOnly":true},"option_name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the option within its data set; lower values appear first."},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"option_name_translations":{"type":"string","format":"binary","example":"blob","description":"Map of locale codes to translated option names (e.g. {\"en-US\": \"Hot\", \"de-DE\": \"Heiß\"}). Empty when no translations are defined."}},"required":["data_set_id","option_name","sort_order","option_name_translations"]},"updateDataInput":{"description":"Field values to change on a Data record; fields left out keep their values.","properties":{"allowed_by":{"type":"object","description":"For dependent dropdowns, the parent-field values this option is available for, as a JSON array of identifiers (option ids or enum names). Empty when always available."},"calc_value":{"type":"number","format":"double","example":4.32,"description":"Numeric value associated with the option, used in calculation formulas (e.g. score of a dropdown option)."},"option_name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the option within its data set; lower values appear first."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"option_name_translations":{"type":"string","format":"binary","example":"blob","description":"Map of locale codes to translated option names (e.g. {\"en-US\": \"Hot\", \"de-DE\": \"Heiß\"}). Empty when no translations are defined."}}},"batchDataInput":{"description":"Field values of a Data record to create, or to update when its id is set.","properties":{"allowed_by":{"type":"object","description":"For dependent dropdowns, the parent-field values this option is available for, as a JSON array of identifiers (option ids or enum names). Empty when always available."},"calc_value":{"type":"number","format":"double","example":4.32,"description":"Numeric value associated with the option, used in calculation formulas (e.g. score of a dropdown option)."},"option_name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the option within its data set; lower values appear first."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"option_name_translations":{"type":"string","format":"binary","example":"blob","description":"Map of locale codes to translated option names (e.g. {\"en-US\": \"Hot\", \"de-DE\": \"Heiß\"}). Empty when no translations are defined."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Email":{"description":"Email message sent or received by users of the space, linked to the contacts, accounts and other records it concerns.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"company_email":{"type":"string","format":"uri","description":"Configured company email used as the From / Reply-To. Empty when sent from the user mailbox.\n\nRelated CompanyEmail record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CompanyEmail' for its fields."},"draft_parent_email":{"type":"string","format":"uri","description":"The original email a draft was started from (reply/forward source), or empty for a standalone draft.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"owner":{"type":"string","format":"uri","description":"Sales user who owns this email. May be empty for unassigned emails.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"parent_email":{"type":"string","format":"uri","description":"For mass emails: the master email this copy was generated from. Empty for the master and for non-mass emails.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"sender_account":{"type":"string","format":"uri","description":"Account record matched as the sender, or empty when the sender does not match an existing Account.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"sender_client":{"type":"string","format":"uri","description":"Internal user matched as the sender, or empty when the sender is external.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"sender_contact":{"type":"string","format":"uri","description":"Contact record matched as the sender, or empty when the sender does not match an existing Contact.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"template":{"type":"string","format":"uri","description":"Email template used to compose this email, or empty when none was used.\n\nRelated EmailTemplate record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailTemplate' for its fields."},"additional_headers":{"type":"object","description":"Extra raw email headers preserved from the source message, as a JSON object mapping each header name to a string or a list of strings."},"bcc":{"type":"string","example":"string","description":"Comma-separated list of blind-carbon-copy recipients."},"body":{"type":"string","example":"string","description":"HTML body of the email. Returned only to users with read permission on the email content; otherwise empty."},"body_summary":{"type":"string","example":"string","description":"Plain-text summary of the email body. Returned only to users with read permission on the email content; otherwise empty."},"cc":{"type":"string","example":"string","description":"Comma-separated list of carbon-copy recipients."},"company_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company email used as the From / Reply-To. Empty when sent from the user mailbox."},"content_share_mode":{"type":"integer","description":"How the email body is shared with non-owners (e.g. Private hides the body, Public makes it visible to anyone with read access on the email envelope).\n\nInteger enum value: 0 - Custom, 1 - Private, 2 - Public","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The owner, users the email is shared with, and the users and units listed in contentSharingClients and contentSharingUnits.","1":"Only the owner, the sender and users the email is shared with.","2":"Everyone who can see the email."}},"content_type":{"type":"string","example":"string","description":"MIME content type of the body (e.g. text/html, text/plain)."},"date_sent":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the email was sent. Empty for drafts and scheduled emails not yet sent."},"direction":{"type":"integer","description":"Direction of the email (Incoming, Outgoing).\n\nInteger enum value: 1 - OutgoingEmail, 2 - IncomingEmail","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Sent from Coevera or by a user's mailbox.","2":"Received from another party."}},"draft_parent_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the original email a draft was started from (reply/forward source), or empty for a standalone draft."},"draft_settings":{"type":"object","description":"Serialised state of the Create Email dialogue for a draft, as a JSON object, so the composer can be re-opened verbatim. Empty for non-draft emails."},"error_code":{"type":"integer","format":"int32","example":1,"description":"Numeric error code recorded when the email failed to send. Zero when no error occurred."},"is_draft":{"type":"boolean","example":false,"description":"True when this email is an unsent draft. Drafts have no date_sent/send_at and are excluded from the sent/scheduled streams."},"is_tracked":{"type":"boolean","example":false,"description":"True when delivery tracking is enabled. Tracked emails generate EmailEvent records on open/click."},"original_id":{"type":"string","example":"string","description":"External identifier of the email on the source mailbox (e.g. IMAP Message-ID). Used to deduplicate when re-syncing."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email owner."},"parent_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent (master) email."},"schedule_settings":{"type":"object","description":"Scheduling configuration for delayed sending, as a JSON object; next_schedule is a numeric timestamp and recipients/cc/bcc are lists."},"send_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp at which a scheduled email is queued to be sent. Empty for immediately-sent emails."},"sender":{"type":"string","example":"string","description":"Sender address as it appeared on the email (free-text \"From\" header)."},"sender_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched sender account."},"sender_client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched sender user."},"sender_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched sender contact."},"sender_email_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the personal email-integration account that sent this email."},"sentiment":{"type":"integer","description":"Tone of the email (Negative, Neutral or Positive) as assessed by AI from its content; empty until assessed. Returned only to users with read permission on the email content.\n\nInteger enum value: 0 - Negative, 1 - Neutral, 2 - Positive","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The email has a negative tone.","1":"The email has a neutral tone.","2":"The email has a positive tone."}},"share_mode":{"type":"integer","description":"Sharing model for the email envelope (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"subject":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"table_name":{"type":"string","example":"string","description":"Discriminator identifying the concrete record type — always \"email\" for Email records. Read-only; useful when consuming polymorphic Message results.","readOnly":true},"template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template."},"thread_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier grouping emails belonging to the same conversation thread."},"to":{"type":"string","example":"string","description":"Comma-separated list of primary recipients."},"type":{"type":"integer","description":"Whether the email is an individual email (Standard) or part of a mass email (Mass).\n\nInteger enum value: 1 - Standard, 2 - Mass","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Individual email.","2":"Mass email sent to many recipients."}},"uid":{"type":"string","example":"string","description":"IMAP UID of the email on the source mailbox."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"is_favorite":{"type":"boolean","example":false,"description":"True when the current authenticated user has marked this email as favorite. Per-user."},"sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageSharingSalesUnitRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageSharingSalesUnitRelation' for its fields."},"description":"Sales units that have been granted shared access to this email envelope."},"sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageSharingClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageSharingClientRelation' for its fields."},"description":"Users that have been granted shared access to this email envelope."},"content_sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related EmailContentSharingSalesUnitRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailContentSharingSalesUnitRelation' for its fields."},"description":"Sales units that have been granted access to the email body when content_share_mode is restricted."},"content_sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related EmailContentSharingClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailContentSharingClientRelation' for its fields."},"description":"Users that have been granted access to the email body when content_share_mode is restricted."},"account_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageRelation' for its fields."},"description":"Accounts this email is linked to."},"contact_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageRelation' for its fields."},"description":"Contacts this email is linked to."},"project_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageRelation' for its fields."},"description":"Projects this email is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageRelation' for its fields."},"description":"Custom entity records this email is linked to."},"lead_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageRelation' for its fields."},"description":"Leads this email is linked to."},"opportunity_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageRelation' for its fields."},"description":"Opportunities this email is linked to."},"quote_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageRelation' for its fields."},"description":"Quotes this email is linked to."},"tags":{"type":"array","items":{"type":"string","format":"uri","description":"Related TagRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TagRelation' for its fields."},"description":"Tag labels applied to this email. Visible only to users that can read the email body."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Attachments and other documents linked to this email."},"mailbox_ids":{"type":"array","items":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000"},"description":"Ids of the mailboxes (company or personal) the email envelope belongs to, aggregated from the active email_mailbox_relation rows."}},"required":["is_delete_protected","id","direction","table_name","uid","is_favorite","mailbox_ids"]},"createEmailInput":{"description":"Field values of a new Email record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"additional_headers":{"type":"object","description":"Extra raw email headers preserved from the source message, as a JSON object mapping each header name to a string or a list of strings."},"bcc":{"type":"string","example":"string","description":"Comma-separated list of blind-carbon-copy recipients."},"body":{"type":"string","example":"string","description":"HTML body of the email. Returned only to users with read permission on the email content; otherwise empty."},"body_summary":{"type":"string","example":"string","description":"Plain-text summary of the email body. Returned only to users with read permission on the email content; otherwise empty."},"cc":{"type":"string","example":"string","description":"Comma-separated list of carbon-copy recipients."},"company_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company email used as the From / Reply-To. Empty when sent from the user mailbox."},"content_share_mode":{"type":"integer","description":"How the email body is shared with non-owners (e.g. Private hides the body, Public makes it visible to anyone with read access on the email envelope).\n\nInteger enum value: 0 - Custom, 1 - Private, 2 - Public","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The owner, users the email is shared with, and the users and units listed in contentSharingClients and contentSharingUnits.","1":"Only the owner, the sender and users the email is shared with.","2":"Everyone who can see the email."}},"content_type":{"type":"string","example":"string","description":"MIME content type of the body (e.g. text/html, text/plain)."},"date_sent":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the email was sent. Empty for drafts and scheduled emails not yet sent."},"direction":{"type":"integer","description":"Direction of the email (Incoming, Outgoing).\n\nInteger enum value: 1 - OutgoingEmail, 2 - IncomingEmail","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Sent from Coevera or by a user's mailbox.","2":"Received from another party."}},"draft_parent_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the original email a draft was started from (reply/forward source), or empty for a standalone draft."},"draft_settings":{"type":"object","description":"Serialised state of the Create Email dialogue for a draft, as a JSON object, so the composer can be re-opened verbatim. Empty for non-draft emails."},"error_code":{"type":"integer","format":"int32","example":1,"description":"Numeric error code recorded when the email failed to send. Zero when no error occurred."},"is_draft":{"type":"boolean","example":false,"description":"True when this email is an unsent draft. Drafts have no date_sent/send_at and are excluded from the sent/scheduled streams."},"is_tracked":{"type":"boolean","example":false,"description":"True when delivery tracking is enabled. Tracked emails generate EmailEvent records on open/click."},"original_id":{"type":"string","example":"string","description":"External identifier of the email on the source mailbox (e.g. IMAP Message-ID). Used to deduplicate when re-syncing."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email owner."},"parent_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent (master) email."},"schedule_settings":{"type":"object","description":"Scheduling configuration for delayed sending, as a JSON object; next_schedule is a numeric timestamp and recipients/cc/bcc are lists."},"send_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp at which a scheduled email is queued to be sent. Empty for immediately-sent emails."},"sender":{"type":"string","example":"string","description":"Sender address as it appeared on the email (free-text \"From\" header)."},"sender_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched sender account."},"sender_client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched sender user."},"sender_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched sender contact."},"sender_email_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the personal email-integration account that sent this email."},"sentiment":{"type":"integer","description":"Tone of the email (Negative, Neutral or Positive) as assessed by AI from its content; empty until assessed. Returned only to users with read permission on the email content.\n\nInteger enum value: 0 - Negative, 1 - Neutral, 2 - Positive","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The email has a negative tone.","1":"The email has a neutral tone.","2":"The email has a positive tone."}},"share_mode":{"type":"integer","description":"Sharing model for the email envelope (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"subject":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template."},"thread_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier grouping emails belonging to the same conversation thread."},"to":{"type":"string","example":"string","description":"Comma-separated list of primary recipients."},"type":{"type":"integer","description":"Whether the email is an individual email (Standard) or part of a mass email (Mass).\n\nInteger enum value: 1 - Standard, 2 - Mass","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Individual email.","2":"Mass email sent to many recipients."}},"uid":{"type":"string","example":"string","description":"IMAP UID of the email on the source mailbox."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageSharingSalesUnitRelation record."}},"description":"Related MessageSharingSalesUnitRelation record; see 'createMessageSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this email envelope."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageSharingClientRelation record."}},"description":"Related MessageSharingClientRelation record; see 'createMessageSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this email envelope."},"content_sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailContentSharingSalesUnitRelation record."}},"description":"Related EmailContentSharingSalesUnitRelation record; see 'createEmailContentSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted access to the email body when content_share_mode is restricted."},"content_sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailContentSharingClientRelation record."}},"description":"Related EmailContentSharingClientRelation record; see 'createEmailContentSharingClientRelationInput' for its fields."},"description":"Users that have been granted access to the email body when content_share_mode is restricted."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'createMessageRelationInput' for its fields."},"description":"Accounts this email is linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'createMessageRelationInput' for its fields."},"description":"Contacts this email is linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'createMessageRelationInput' for its fields."},"description":"Projects this email is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'createMessageRelationInput' for its fields."},"description":"Custom entity records this email is linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'createMessageRelationInput' for its fields."},"description":"Leads this email is linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'createMessageRelationInput' for its fields."},"description":"Opportunities this email is linked to."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'createMessageRelationInput' for its fields."},"description":"Quotes this email is linked to."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'createTagRelationInput' for its fields."},"description":"Tag labels applied to this email. Visible only to users that can read the email body."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Attachments and other documents linked to this email."}},"required":["direction","uid"]},"updateEmailInput":{"description":"Field values to change on an Email record; fields left out keep their values.","properties":{"additional_headers":{"type":"object","description":"Extra raw email headers preserved from the source message, as a JSON object mapping each header name to a string or a list of strings."},"bcc":{"type":"string","example":"string","description":"Comma-separated list of blind-carbon-copy recipients."},"body":{"type":"string","example":"string","description":"HTML body of the email. Returned only to users with read permission on the email content; otherwise empty."},"body_summary":{"type":"string","example":"string","description":"Plain-text summary of the email body. Returned only to users with read permission on the email content; otherwise empty."},"cc":{"type":"string","example":"string","description":"Comma-separated list of carbon-copy recipients."},"company_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company email used as the From / Reply-To. Empty when sent from the user mailbox."},"content_share_mode":{"type":"integer","description":"How the email body is shared with non-owners (e.g. Private hides the body, Public makes it visible to anyone with read access on the email envelope).\n\nInteger enum value: 0 - Custom, 1 - Private, 2 - Public","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The owner, users the email is shared with, and the users and units listed in contentSharingClients and contentSharingUnits.","1":"Only the owner, the sender and users the email is shared with.","2":"Everyone who can see the email."}},"content_type":{"type":"string","example":"string","description":"MIME content type of the body (e.g. text/html, text/plain)."},"date_sent":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the email was sent. Empty for drafts and scheduled emails not yet sent."},"direction":{"type":"integer","description":"Direction of the email (Incoming, Outgoing).\n\nInteger enum value: 1 - OutgoingEmail, 2 - IncomingEmail","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Sent from Coevera or by a user's mailbox.","2":"Received from another party."}},"draft_parent_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the original email a draft was started from (reply/forward source), or empty for a standalone draft."},"draft_settings":{"type":"object","description":"Serialised state of the Create Email dialogue for a draft, as a JSON object, so the composer can be re-opened verbatim. Empty for non-draft emails."},"error_code":{"type":"integer","format":"int32","example":1,"description":"Numeric error code recorded when the email failed to send. Zero when no error occurred."},"is_draft":{"type":"boolean","example":false,"description":"True when this email is an unsent draft. Drafts have no date_sent/send_at and are excluded from the sent/scheduled streams."},"is_tracked":{"type":"boolean","example":false,"description":"True when delivery tracking is enabled. Tracked emails generate EmailEvent records on open/click."},"original_id":{"type":"string","example":"string","description":"External identifier of the email on the source mailbox (e.g. IMAP Message-ID). Used to deduplicate when re-syncing."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email owner."},"parent_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent (master) email."},"schedule_settings":{"type":"object","description":"Scheduling configuration for delayed sending, as a JSON object; next_schedule is a numeric timestamp and recipients/cc/bcc are lists."},"send_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp at which a scheduled email is queued to be sent. Empty for immediately-sent emails."},"sender":{"type":"string","example":"string","description":"Sender address as it appeared on the email (free-text \"From\" header)."},"sender_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched sender account."},"sender_client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched sender user."},"sender_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched sender contact."},"sender_email_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the personal email-integration account that sent this email."},"sentiment":{"type":"integer","description":"Tone of the email (Negative, Neutral or Positive) as assessed by AI from its content; empty until assessed. Returned only to users with read permission on the email content.\n\nInteger enum value: 0 - Negative, 1 - Neutral, 2 - Positive","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The email has a negative tone.","1":"The email has a neutral tone.","2":"The email has a positive tone."}},"share_mode":{"type":"integer","description":"Sharing model for the email envelope (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"subject":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template."},"thread_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier grouping emails belonging to the same conversation thread."},"to":{"type":"string","example":"string","description":"Comma-separated list of primary recipients."},"type":{"type":"integer","description":"Whether the email is an individual email (Standard) or part of a mass email (Mass).\n\nInteger enum value: 1 - Standard, 2 - Mass","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Individual email.","2":"Mass email sent to many recipients."}},"uid":{"type":"string","example":"string","description":"IMAP UID of the email on the source mailbox."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageSharingSalesUnitRelation record."}},"description":"Related MessageSharingSalesUnitRelation record; see 'updateMessageSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this email envelope."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageSharingClientRelation record."}},"description":"Related MessageSharingClientRelation record; see 'updateMessageSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this email envelope."},"content_sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailContentSharingSalesUnitRelation record."}},"description":"Related EmailContentSharingSalesUnitRelation record; see 'updateEmailContentSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted access to the email body when content_share_mode is restricted."},"content_sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailContentSharingClientRelation record."}},"description":"Related EmailContentSharingClientRelation record; see 'updateEmailContentSharingClientRelationInput' for its fields."},"description":"Users that have been granted access to the email body when content_share_mode is restricted."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Accounts this email is linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Contacts this email is linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Projects this email is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Custom entity records this email is linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Leads this email is linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Opportunities this email is linked to."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Quotes this email is linked to."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this email. Visible only to users that can read the email body."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Attachments and other documents linked to this email."}}},"batchEmailInput":{"description":"Field values of an Email record to create, or to update when its id is set.","properties":{"additional_headers":{"type":"object","description":"Extra raw email headers preserved from the source message, as a JSON object mapping each header name to a string or a list of strings."},"bcc":{"type":"string","example":"string","description":"Comma-separated list of blind-carbon-copy recipients."},"body":{"type":"string","example":"string","description":"HTML body of the email. Returned only to users with read permission on the email content; otherwise empty."},"body_summary":{"type":"string","example":"string","description":"Plain-text summary of the email body. Returned only to users with read permission on the email content; otherwise empty."},"cc":{"type":"string","example":"string","description":"Comma-separated list of carbon-copy recipients."},"company_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the company email used as the From / Reply-To. Empty when sent from the user mailbox."},"content_share_mode":{"type":"integer","description":"How the email body is shared with non-owners (e.g. Private hides the body, Public makes it visible to anyone with read access on the email envelope).\n\nInteger enum value: 0 - Custom, 1 - Private, 2 - Public","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The owner, users the email is shared with, and the users and units listed in contentSharingClients and contentSharingUnits.","1":"Only the owner, the sender and users the email is shared with.","2":"Everyone who can see the email."}},"content_type":{"type":"string","example":"string","description":"MIME content type of the body (e.g. text/html, text/plain)."},"date_sent":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the email was sent. Empty for drafts and scheduled emails not yet sent."},"direction":{"type":"integer","description":"Direction of the email (Incoming, Outgoing).\n\nInteger enum value: 1 - OutgoingEmail, 2 - IncomingEmail","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Sent from Coevera or by a user's mailbox.","2":"Received from another party."}},"draft_parent_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the original email a draft was started from (reply/forward source), or empty for a standalone draft."},"draft_settings":{"type":"object","description":"Serialised state of the Create Email dialogue for a draft, as a JSON object, so the composer can be re-opened verbatim. Empty for non-draft emails."},"error_code":{"type":"integer","format":"int32","example":1,"description":"Numeric error code recorded when the email failed to send. Zero when no error occurred."},"is_draft":{"type":"boolean","example":false,"description":"True when this email is an unsent draft. Drafts have no date_sent/send_at and are excluded from the sent/scheduled streams."},"is_tracked":{"type":"boolean","example":false,"description":"True when delivery tracking is enabled. Tracked emails generate EmailEvent records on open/click."},"original_id":{"type":"string","example":"string","description":"External identifier of the email on the source mailbox (e.g. IMAP Message-ID). Used to deduplicate when re-syncing."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email owner."},"parent_email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent (master) email."},"schedule_settings":{"type":"object","description":"Scheduling configuration for delayed sending, as a JSON object; next_schedule is a numeric timestamp and recipients/cc/bcc are lists."},"send_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp at which a scheduled email is queued to be sent. Empty for immediately-sent emails."},"sender":{"type":"string","example":"string","description":"Sender address as it appeared on the email (free-text \"From\" header)."},"sender_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched sender account."},"sender_client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched sender user."},"sender_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched sender contact."},"sender_email_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the personal email-integration account that sent this email."},"sentiment":{"type":"integer","description":"Tone of the email (Negative, Neutral or Positive) as assessed by AI from its content; empty until assessed. Returned only to users with read permission on the email content.\n\nInteger enum value: 0 - Negative, 1 - Neutral, 2 - Positive","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The email has a negative tone.","1":"The email has a neutral tone.","2":"The email has a positive tone."}},"share_mode":{"type":"integer","description":"Sharing model for the email envelope (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"subject":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template."},"thread_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier grouping emails belonging to the same conversation thread."},"to":{"type":"string","example":"string","description":"Comma-separated list of primary recipients."},"type":{"type":"integer","description":"Whether the email is an individual email (Standard) or part of a mass email (Mass).\n\nInteger enum value: 1 - Standard, 2 - Mass","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Individual email.","2":"Mass email sent to many recipients."}},"uid":{"type":"string","example":"string","description":"IMAP UID of the email on the source mailbox."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageSharingSalesUnitRelation record."}},"description":"Related MessageSharingSalesUnitRelation record; see 'updateMessageSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this email envelope."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageSharingClientRelation record."}},"description":"Related MessageSharingClientRelation record; see 'updateMessageSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this email envelope."},"content_sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailContentSharingSalesUnitRelation record."}},"description":"Related EmailContentSharingSalesUnitRelation record; see 'updateEmailContentSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted access to the email body when content_share_mode is restricted."},"content_sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailContentSharingClientRelation record."}},"description":"Related EmailContentSharingClientRelation record; see 'updateEmailContentSharingClientRelationInput' for its fields."},"description":"Users that have been granted access to the email body when content_share_mode is restricted."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Accounts this email is linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Contacts this email is linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Projects this email is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Custom entity records this email is linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Leads this email is linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Opportunities this email is linked to."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Quotes this email is linked to."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this email. Visible only to users that can read the email body."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Attachments and other documents linked to this email."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EmailContentSharingClientRelation":{"description":"Sharing of the body of an email with a user, letting them read its content.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User granted access to the email body.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"email":{"type":"string","format":"uri","description":"Email whose body is being shared.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email whose body is shared with the user."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","client","email","client_id","email_id"]},"createEmailContentSharingClientRelationInput":{"description":"Field values of a new EmailContentSharingClientRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email whose body is shared with the user."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["client_id","email_id"]},"updateEmailContentSharingClientRelationInput":{"description":"Field values to change on an EmailContentSharingClientRelation record; fields left out keep their values.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email whose body is shared with the user."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchEmailContentSharingClientRelationInput":{"description":"Field values of an EmailContentSharingClientRelation record to create, or to update when its id is set.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email whose body is shared with the user."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EmailContentSharingSalesUnitRelation":{"description":"Sharing of the body of an email with a sales unit, letting its members read its content.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email":{"type":"string","format":"uri","description":"Email whose body is being shared.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit granted access to the email body.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email whose body is shared with the sales unit."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","email","unit","email_id","unit_id"]},"createEmailContentSharingSalesUnitRelationInput":{"description":"Field values of a new EmailContentSharingSalesUnitRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email whose body is shared with the sales unit."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["email_id","unit_id"]},"updateEmailContentSharingSalesUnitRelationInput":{"description":"Field values to change on an EmailContentSharingSalesUnitRelation record; fields left out keep their values.","properties":{"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email whose body is shared with the sales unit."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchEmailContentSharingSalesUnitRelationInput":{"description":"Field values of an EmailContentSharingSalesUnitRelation record to create, or to update when its id is set.","properties":{"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email whose body is shared with the sales unit."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EmailEvent":{"description":"Tracking event reported for a sent email, such as an open, a link click, a reply or an unsubscribe.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email":{"type":"string","format":"uri","description":"Email message the event was reported for.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"additional_data":{"type":"object","description":"Provider-specific extra data captured with the event (e.g. user agent, ip), as a JSON document."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email message."},"type":{"type":"integer","description":"Kind of tracking event reported for the email, such as an open, a link click, a reply, an unsubscribe or a bounce.\n\nInteger enum value: 1 - Open, 2 - Click, 3 - Unsubscribe, 4 - Bounce, 5 - Reply, 6 - BounceSoft","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"The recipient opened the email.","2":"The recipient clicked a link in the email.","3":"The recipient unsubscribed through the email.","4":"The email bounced permanently (hard bounce).","5":"The recipient replied to the email.","6":"Delivery failed temporarily or was delayed (soft bounce)."}},"url":{"type":"string","example":"string","description":"URL the recipient interacted with. Set for click events; empty for other event types."}},"required":["is_delete_protected","id","email","email_id"]},"createEmailEventInput":{"description":"Field values of a new EmailEvent record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"additional_data":{"type":"object","description":"Provider-specific extra data captured with the event (e.g. user agent, ip), as a JSON document."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email message."},"type":{"type":"integer","description":"Kind of tracking event reported for the email, such as an open, a link click, a reply, an unsubscribe or a bounce.\n\nInteger enum value: 1 - Open, 2 - Click, 3 - Unsubscribe, 4 - Bounce, 5 - Reply, 6 - BounceSoft","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"The recipient opened the email.","2":"The recipient clicked a link in the email.","3":"The recipient unsubscribed through the email.","4":"The email bounced permanently (hard bounce).","5":"The recipient replied to the email.","6":"Delivery failed temporarily or was delayed (soft bounce)."}},"url":{"type":"string","example":"string","description":"URL the recipient interacted with. Set for click events; empty for other event types."}},"required":["email_id"]},"updateEmailEventInput":{"description":"Field values to change on an EmailEvent record; fields left out keep their values.","properties":{"additional_data":{"type":"object","description":"Provider-specific extra data captured with the event (e.g. user agent, ip), as a JSON document."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email message."},"type":{"type":"integer","description":"Kind of tracking event reported for the email, such as an open, a link click, a reply, an unsubscribe or a bounce.\n\nInteger enum value: 1 - Open, 2 - Click, 3 - Unsubscribe, 4 - Bounce, 5 - Reply, 6 - BounceSoft","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"The recipient opened the email.","2":"The recipient clicked a link in the email.","3":"The recipient unsubscribed through the email.","4":"The email bounced permanently (hard bounce).","5":"The recipient replied to the email.","6":"Delivery failed temporarily or was delayed (soft bounce)."}},"url":{"type":"string","example":"string","description":"URL the recipient interacted with. Set for click events; empty for other event types."}}},"batchEmailEventInput":{"description":"Field values of an EmailEvent record to create, or to update when its id is set.","properties":{"additional_data":{"type":"object","description":"Provider-specific extra data captured with the event (e.g. user agent, ip), as a JSON document."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email message."},"type":{"type":"integer","description":"Kind of tracking event reported for the email, such as an open, a link click, a reply, an unsubscribe or a bounce.\n\nInteger enum value: 1 - Open, 2 - Click, 3 - Unsubscribe, 4 - Bounce, 5 - Reply, 6 - BounceSoft","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"The recipient opened the email.","2":"The recipient clicked a link in the email.","3":"The recipient unsubscribed through the email.","4":"The email bounced permanently (hard bounce).","5":"The recipient replied to the email.","6":"Delivery failed temporarily or was delayed (soft bounce)."}},"url":{"type":"string","example":"string","description":"URL the recipient interacted with. Set for click events; empty for other event types."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EmailLabel":{"description":"Personal label a user applies to email conversations to organize their mailbox; labels can be nested.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"Client who created this label; labels are personal and not shared with teammates.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"parent_email_label":{"type":"string","format":"uri","description":"Parent label this one is nested under, or empty for a top-level label.\n\nRelated EmailLabel record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailLabel' for its fields."},"color":{"type":"integer","format":"int32","example":1,"description":"Color the label is displayed with, as a packed RGB integer."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the client who created this label."},"parent_email_label_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent label this one is nested under, or empty for a top-level label."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","owner","color","name","owner_id"]},"createEmailLabelInput":{"description":"Field values of a new EmailLabel record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"parent_email_label":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailLabel record."}},"description":"Parent label this one is nested under, or empty for a top-level label.\n\nRelated EmailLabel record; see 'createEmailLabelInput' for its fields."},"color":{"type":"integer","format":"int32","example":1,"description":"Color the label is displayed with, as a packed RGB integer."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the client who created this label."},"parent_email_label_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent label this one is nested under, or empty for a top-level label."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["color","name","owner_id"]},"updateEmailLabelInput":{"description":"Field values to change on an EmailLabel record; fields left out keep their values.","properties":{"parent_email_label":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailLabel record."}},"description":"Parent label this one is nested under, or empty for a top-level label.\n\nRelated EmailLabel record; see 'updateEmailLabelInput' for its fields."},"color":{"type":"integer","format":"int32","example":1,"description":"Color the label is displayed with, as a packed RGB integer."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the client who created this label."},"parent_email_label_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent label this one is nested under, or empty for a top-level label."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchEmailLabelInput":{"description":"Field values of an EmailLabel record to create, or to update when its id is set.","properties":{"parent_email_label":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailLabel record."}},"description":"Parent label this one is nested under, or empty for a top-level label.\n\nRelated EmailLabel record; see 'updateEmailLabelInput' for its fields."},"color":{"type":"integer","format":"int32","example":1,"description":"Color the label is displayed with, as a packed RGB integer."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the client who created this label."},"parent_email_label_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent label this one is nested under, or empty for a top-level label."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EmailLabelRelation":{"description":"Email label applied to a conversation in a mailbox.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email_label":{"type":"string","format":"uri","description":"Label applied to the thread by this relation.\n\nRelated EmailLabel record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailLabel' for its fields."},"owner":{"type":"string","format":"uri","description":"Sales user who owns this relation. Derived from the label's owner on write.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"email_label_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the applied label."},"mailbox_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the mailbox (connected email account) the label is applied in. A label applies to a thread per mailbox, so the same thread can be labelled differently in two mailboxes."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the relation owner."},"thread_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier of the conversation thread the label is applied to, matching Email.threadId. Every email in the thread shows the label."}},"required":["is_delete_protected","id","email_label","email_label_id","mailbox_id","thread_id"]},"createEmailLabelRelationInput":{"description":"Field values of a new EmailLabelRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email_label":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailLabel record."}},"description":"Label applied to the thread by this relation.\n\nRelated EmailLabel record; see 'createEmailLabelInput' for its fields."},"email_label_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the applied label."},"mailbox_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the mailbox (connected email account) the label is applied in. A label applies to a thread per mailbox, so the same thread can be labelled differently in two mailboxes."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the relation owner."},"thread_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier of the conversation thread the label is applied to, matching Email.threadId. Every email in the thread shows the label."}},"required":["email_label","email_label_id","mailbox_id","thread_id"]},"updateEmailLabelRelationInput":{"description":"Field values to change on an EmailLabelRelation record; fields left out keep their values.","properties":{"email_label":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailLabel record."}},"description":"Label applied to the thread by this relation.\n\nRelated EmailLabel record; see 'updateEmailLabelInput' for its fields."},"email_label_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the applied label."},"mailbox_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the mailbox (connected email account) the label is applied in. A label applies to a thread per mailbox, so the same thread can be labelled differently in two mailboxes."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the relation owner."},"thread_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier of the conversation thread the label is applied to, matching Email.threadId. Every email in the thread shows the label."}}},"batchEmailLabelRelationInput":{"description":"Field values of an EmailLabelRelation record to create, or to update when its id is set.","properties":{"email_label":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailLabel record."}},"description":"Label applied to the thread by this relation.\n\nRelated EmailLabel record; see 'updateEmailLabelInput' for its fields."},"email_label_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the applied label."},"mailbox_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the mailbox (connected email account) the label is applied in. A label applies to a thread per mailbox, so the same thread can be labelled differently in two mailboxes."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the relation owner."},"thread_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier of the conversation thread the label is applied to, matching Email.threadId. Every email in the thread shows the label."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EmailMailboxRelation":{"description":"Link between an email and a mailbox the email belongs to.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email":{"type":"string","format":"uri","description":"Email that belongs to the mailbox.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"direction":{"type":"integer","description":"Direction of the email relative to this mailbox: outgoing for the mailbox that sent it, incoming for a mailbox that received it. The same email can therefore be outgoing in one mailbox and incoming in another. Defaults to the email direction when not set.\n\nInteger enum value: 1 - OutgoingEmail, 2 - IncomingEmail","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Sent from Coevera or by a user's mailbox.","2":"Received from another party."}},"email_created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email that belongs to the mailbox."},"email_is_deleted":{"type":"boolean","example":false,"description":"True when the related email has been deleted from this mailbox; such links are hidden from the inbox view."},"error_code":{"type":"integer","format":"int32","example":1,"description":"Error code for the email in this mailbox; 0 means the email was processed without error."},"event_types":{"type":"string","example":2,"enum":[2,4,8,16,32,64],"description":"Tracking events recorded so far for the related email (opens, clicks, replies, bounces, unsubscribes); several can be combined. Read-only; kept in sync with the email's EmailEvent records.","x-enumDescriptions":{"2":"The recipient opened the email.","4":"The recipient clicked a link in the email.","8":"The recipient unsubscribed through the email.","16":"The email bounced permanently (hard bounce).","32":"The recipient replied to the email.","64":"Delivery failed temporarily or was delayed (soft bounce)."}},"is_draft":{"type":"boolean","example":false,"description":"Copy of the related email's draft flag; true when the email is an unsent draft, which shows it in the mailbox Drafts."},"is_scheduled":{"type":"boolean","example":false,"description":"Whether the email is scheduled to be sent at a future time and has not been sent yet."},"label_ids":{"type":"object","description":"Ids of the labels applied to this conversation in this mailbox. Read-only copy of the EmailLabelRelation records; manage labels via that entity rather than writing here."},"mailbox_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the mailbox (connected email account) the email belongs to."},"sent_or_scheduled_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when the email was sent, or its scheduled send time if it has not been sent yet."},"thread_or_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email thread, or the id of the email itself when it does not belong to a thread."},"type":{"type":"integer","description":"Copy of the related email's type: an individual email or part of a mass email. Read-only; kept in sync with the email.\n\nInteger enum value: 1 - Standard, 2 - Mass","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Individual email.","2":"Mass email sent to many recipients."}}},"required":["is_delete_protected","id","email","email_id","mailbox_id"]},"EmailSequence":{"description":"Automated series of emails sent step by step to the records enrolled in it, with rules for when to send and when to stop.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User who owns this email sequence.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"deactivation_reason":{"type":"integer","description":"Reason the sequence is currently disabled (e.g. Manual stop, system suspension). Read-only.\n\nInteger enum value: 0 - NoReason, 1 - Manual, 2 - TooManyErrors, 3 - DisabledFeature","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"The sequence is enabled.","1":"A user disabled the sequence.","2":"The sequence was suspended automatically after repeated failed runs.","3":"The sequence was suspended because the feature is no longer available in the space."}},"description":{"type":"string","example":"string","description":"Free-form description of the sequence."},"is_enabled":{"type":"boolean","example":false,"description":"Master switch for the sequence. Read-only on this surface — change it via the enable / disable mutations."},"last_schema_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to settings. Read-only."},"last_status_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to is_enabled. Read-only."},"name":{"type":"string","example":"string","description":"Display name of the email sequence."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence owner."},"settings":{"type":"object","description":"JSON schema describing the sequence trigger, nodes (steps) and global actions (e.g. on-reply, on-bounce, on-unsubscribe). This payload conforms to the `EmailSequenceSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EmailSequenceSchema.json","description":"EmailSequenceSchema JSON Schema"}},"type":{"type":"integer","description":"Process category of the sequence (e.g. EmailSequence vs other process types).\n\nInteger enum value: 1 - Personal, 2 - Space","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Owned by one user and started only by that user's own actions.","2":"Shared for the whole space; its trigger decides whose actions start it."}},"activity_logs":{"type":"array","items":{"type":"string","format":"uri","description":"Related EmailSequenceActivityLog record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailSequenceActivityLog' for its fields."},"description":"Run history of the sequence — one log per scheduled execution."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Attachments and other documents linked to this sequence."},"enrolled":{"type":"array","items":{"type":"string","format":"uri","description":"Related EmailSequenceEnrolled record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailSequenceEnrolled' for its fields."},"description":"Enrolment records (recipients currently or previously running through the sequence)."}},"required":["is_delete_protected","id","owner","name","owner_id","type"]},"createEmailSequenceInput":{"description":"Field values of a new EmailSequence record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"description":{"type":"string","example":"string","description":"Free-form description of the sequence."},"name":{"type":"string","example":"string","description":"Display name of the email sequence."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence owner."},"settings":{"type":"object","description":"JSON schema describing the sequence trigger, nodes (steps) and global actions (e.g. on-reply, on-bounce, on-unsubscribe). This payload conforms to the `EmailSequenceSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EmailSequenceSchema.json","description":"EmailSequenceSchema JSON Schema"}},"type":{"type":"integer","description":"Process category of the sequence (e.g. EmailSequence vs other process types).\n\nInteger enum value: 1 - Personal, 2 - Space","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Owned by one user and started only by that user's own actions.","2":"Shared for the whole space; its trigger decides whose actions start it."}},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Attachments and other documents linked to this sequence."}},"required":["name","owner_id","type"]},"updateEmailSequenceInput":{"description":"Field values to change on an EmailSequence record; fields left out keep their values.","properties":{"description":{"type":"string","example":"string","description":"Free-form description of the sequence."},"name":{"type":"string","example":"string","description":"Display name of the email sequence."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence owner."},"settings":{"type":"object","description":"JSON schema describing the sequence trigger, nodes (steps) and global actions (e.g. on-reply, on-bounce, on-unsubscribe). This payload conforms to the `EmailSequenceSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EmailSequenceSchema.json","description":"EmailSequenceSchema JSON Schema"}},"type":{"type":"integer","description":"Process category of the sequence (e.g. EmailSequence vs other process types).\n\nInteger enum value: 1 - Personal, 2 - Space","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Owned by one user and started only by that user's own actions.","2":"Shared for the whole space; its trigger decides whose actions start it."}},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Attachments and other documents linked to this sequence."}}},"batchEmailSequenceInput":{"description":"Field values of an EmailSequence record to create, or to update when its id is set.","properties":{"description":{"type":"string","example":"string","description":"Free-form description of the sequence."},"name":{"type":"string","example":"string","description":"Display name of the email sequence."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence owner."},"settings":{"type":"object","description":"JSON schema describing the sequence trigger, nodes (steps) and global actions (e.g. on-reply, on-bounce, on-unsubscribe). This payload conforms to the `EmailSequenceSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EmailSequenceSchema.json","description":"EmailSequenceSchema JSON Schema"}},"type":{"type":"integer","description":"Process category of the sequence (e.g. EmailSequence vs other process types).\n\nInteger enum value: 1 - Personal, 2 - Space","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Owned by one user and started only by that user's own actions.","2":"Shared for the whole space; its trigger decides whose actions start it."}},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Attachments and other documents linked to this sequence."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EmailSequenceActivityLog":{"description":"Log of one run of an email sequence, with when it started and finished and who triggered it.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"actor":{"type":"string","format":"uri","description":"User who initiated the run, or empty for runs triggered by automation.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"application":{"type":"string","format":"uri","description":"Application context the run was triggered in (e.g. browser, automation, third-party integration).\n\nRelated Application record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Application' for its fields."},"email_sequence":{"type":"string","format":"uri","description":"Email sequence this activity log belongs to.\n\nRelated EmailSequence record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailSequence' for its fields."},"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who initiated the run, or empty for runs triggered by automation."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application (e.g. browser, automation, third-party integration) the run was triggered in."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence this activity log belongs to."},"end_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the run finished. Empty for runs still in progress."},"is_test_run":{"type":"boolean","example":false,"description":"True when the run was a dry-run / test execution and did not produce real-side effects."},"start_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the run started."},"status":{"type":"integer","description":"Outcome of the run (e.g. Ok, Error, Cancelled).\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"lines":{"type":"array","items":{"type":"string","format":"uri","description":"Related EmailSequenceActivityLogLine record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailSequenceActivityLogLine' for its fields."},"description":"Step-by-step log lines produced during the run."},"record_name":{"type":"string","example":"string","description":"Display name of the record this run enrolled (e.g. contact name). Read-only; computed by Coevera."},"record_email":{"type":"string","example":"string","description":"Email address of the record this run enrolled. Read-only; computed by Coevera."}},"required":["is_delete_protected","id","application","email_sequence","application_id","email_sequence_id","start_time","status"]},"createEmailSequenceActivityLogInput":{"description":"Field values of a new EmailSequenceActivityLog record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who initiated the run, or empty for runs triggered by automation."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application (e.g. browser, automation, third-party integration) the run was triggered in."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence this activity log belongs to."},"end_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the run finished. Empty for runs still in progress."},"is_test_run":{"type":"boolean","example":false,"description":"True when the run was a dry-run / test execution and did not produce real-side effects."},"start_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the run started."},"status":{"type":"integer","description":"Outcome of the run (e.g. Ok, Error, Cancelled).\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}},"required":["application_id","email_sequence_id","start_time","status"]},"updateEmailSequenceActivityLogInput":{"description":"Field values to change on an EmailSequenceActivityLog record; fields left out keep their values.","properties":{"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who initiated the run, or empty for runs triggered by automation."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application (e.g. browser, automation, third-party integration) the run was triggered in."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence this activity log belongs to."},"end_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the run finished. Empty for runs still in progress."},"is_test_run":{"type":"boolean","example":false,"description":"True when the run was a dry-run / test execution and did not produce real-side effects."},"start_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the run started."},"status":{"type":"integer","description":"Outcome of the run (e.g. Ok, Error, Cancelled).\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}}},"batchEmailSequenceActivityLogInput":{"description":"Field values of an EmailSequenceActivityLog record to create, or to update when its id is set.","properties":{"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who initiated the run, or empty for runs triggered by automation."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application (e.g. browser, automation, third-party integration) the run was triggered in."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence this activity log belongs to."},"end_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the run finished. Empty for runs still in progress."},"is_test_run":{"type":"boolean","example":false,"description":"True when the run was a dry-run / test execution and did not produce real-side effects."},"start_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the run started."},"status":{"type":"integer","description":"Outcome of the run (e.g. Ok, Error, Cancelled).\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EmailSequenceActivityLogLine":{"description":"Entry in the log of an email sequence run, recording one step and its outcome.","properties":{"formatted_text":{"type":"string","example":"string","description":"Human-readable rendering of the log line, prefixed with the line's timestamp and (when applicable) the parent record id."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email_sequence_activity_log":{"type":"string","format":"uri","description":"Activity log this line belongs to.\n\nRelated EmailSequenceActivityLog record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailSequenceActivityLog' for its fields."},"email_sequence_activity_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the activity log this line belongs to."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its log run."},"status":{"type":"integer","description":"Outcome of the step the line represents (e.g. Ok, Error, Skipped).\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}},"required":["formatted_text","is_delete_protected","id","email_sequence_activity_log","email_sequence_activity_log_id","sort_order"]},"createEmailSequenceActivityLogLineInput":{"description":"Field values of a new EmailSequenceActivityLogLine record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email_sequence_activity_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the activity log this line belongs to."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its log run."},"status":{"type":"integer","description":"Outcome of the step the line represents (e.g. Ok, Error, Skipped).\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}},"required":["email_sequence_activity_log_id","sort_order"]},"updateEmailSequenceActivityLogLineInput":{"description":"Field values to change on an EmailSequenceActivityLogLine record; fields left out keep their values.","properties":{"email_sequence_activity_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the activity log this line belongs to."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its log run."},"status":{"type":"integer","description":"Outcome of the step the line represents (e.g. Ok, Error, Skipped).\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}}},"batchEmailSequenceActivityLogLineInput":{"description":"Field values of an EmailSequenceActivityLogLine record to create, or to update when its id is set.","properties":{"email_sequence_activity_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the activity log this line belongs to."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its log run."},"status":{"type":"integer","description":"Outcome of the step the line represents (e.g. Ok, Error, Skipped).\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EmailSequenceEnrolled":{"description":"Record enrolled in an email sequence, such as a contact, lead or opportunity, with the run that enrolled it.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account that was enrolled, when the trigger entity is an Account; otherwise empty.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"actor":{"type":"string","format":"uri","description":"User who triggered the enrolment, or empty for runs triggered by automation.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"application":{"type":"string","format":"uri","description":"Application context the enrolment was triggered in.\n\nRelated Application record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Application' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact that was enrolled, when the trigger entity is a Contact; otherwise empty.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"email_sequence_activity_log":{"type":"string","format":"uri","description":"Activity log run that produced this enrolment.\n\nRelated EmailSequenceActivityLog record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailSequenceActivityLog' for its fields."},"email_sequence":{"type":"string","format":"uri","description":"Email sequence this enrolment belongs to.\n\nRelated EmailSequence record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailSequence' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead that was enrolled, when the trigger entity is a Lead; otherwise empty.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity that was enrolled, when the trigger entity is an Opportunity; otherwise empty.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"project":{"type":"string","format":"uri","description":"Project that was enrolled, when the trigger entity is a Project; otherwise empty.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled account."},"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the enrolment, or empty for runs triggered by automation."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application (e.g. browser, automation, third-party integration) the enrolment was triggered in."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled contact."},"email_sequence_activity_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the activity log run that produced this enrolment."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence this enrolment belongs to."},"end_reason":{"type":"integer","description":"Why the enrolment ended: Finished after all steps, Unenrolled when the record was removed before finishing, or NoReason while the enrolment is still active.\n\nInteger enum value: 0 - NoReason, 1 - Unenrolled, 2 - Finished","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The enrollment has not ended; the record is still in the sequence.","1":"The record was removed before finishing, for example manually, by a process, by a step condition or because the sequence expired.","2":"The record went through all steps of the sequence."}},"end_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the enrolment ended (completed or unenrolled). Empty while the enrolment is active."},"entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled record: the account, contact, lead, opportunity or project that is set. Read-only.","readOnly":true},"entity_type":{"type":"integer","description":"Type of the enrolled entity (e.g. Account, Contact, Lead). Read-only.\n\nInteger enum value: 1 - Lead, 2 - Account, 3 - Contact, 4 - Opportunity, 5 - Task, 6 - Appointment, 7 - OpptyProductRelation, 8 - Project, 9 - Quote, 10 - OnlineForm, 11 - CustomEntity, 12 - Product","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"readOnly":true,"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","3":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","5":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","6":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","7":"Product line of an opportunity.","8":"Project delivered for an account or run internally, with its objectives, activities and progress.","9":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","10":"Submission (response) of an online form, with the answers and the records it created or updated.","11":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","12":"Product or service in the catalog that can be added as a line item to opportunities and quotes."}},"excluded_from_stats":{"type":"boolean","example":false,"description":"True when this enrolment is excluded from sequence statistics (e.g. after a stats reset)."},"lead_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled lead."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled opportunity."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled project."},"start_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the enrolment started."},"step_count":{"type":"integer","format":"int32","example":1,"description":"Number of steps the enrolment has reached. Read-only."},"step_index":{"type":"integer","format":"int32","example":1,"description":"Zero-based index of the next step the enrolment will execute (i.e. one past the highest step_index recorded in EmailSequenceEnrolledStatus). Empty before the first step runs."},"entity_name":{"type":"string","example":"string","description":"Name of the enrolled entity (Account, Contact, Lead, Opportunity, or Project), derived from entity_type."}},"required":["is_delete_protected","id","application","email_sequence_activity_log","email_sequence","application_id","email_sequence_activity_log_id","email_sequence_id","entity_id","entity_type","start_time","step_count","entity_name"]},"createEmailSequenceEnrolledInput":{"description":"Field values of a new EmailSequenceEnrolled record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled account."},"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the enrolment, or empty for runs triggered by automation."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application (e.g. browser, automation, third-party integration) the enrolment was triggered in."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled contact."},"email_sequence_activity_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the activity log run that produced this enrolment."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence this enrolment belongs to."},"end_reason":{"type":"integer","description":"Why the enrolment ended: Finished after all steps, Unenrolled when the record was removed before finishing, or NoReason while the enrolment is still active.\n\nInteger enum value: 0 - NoReason, 1 - Unenrolled, 2 - Finished","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The enrollment has not ended; the record is still in the sequence.","1":"The record was removed before finishing, for example manually, by a process, by a step condition or because the sequence expired.","2":"The record went through all steps of the sequence."}},"end_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the enrolment ended (completed or unenrolled). Empty while the enrolment is active."},"excluded_from_stats":{"type":"boolean","example":false,"description":"True when this enrolment is excluded from sequence statistics (e.g. after a stats reset)."},"lead_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled lead."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled opportunity."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled project."},"start_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the enrolment started."}},"required":["application_id","email_sequence_activity_log_id","email_sequence_id","start_time"]},"updateEmailSequenceEnrolledInput":{"description":"Field values to change on an EmailSequenceEnrolled record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled account."},"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the enrolment, or empty for runs triggered by automation."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application (e.g. browser, automation, third-party integration) the enrolment was triggered in."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled contact."},"email_sequence_activity_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the activity log run that produced this enrolment."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence this enrolment belongs to."},"end_reason":{"type":"integer","description":"Why the enrolment ended: Finished after all steps, Unenrolled when the record was removed before finishing, or NoReason while the enrolment is still active.\n\nInteger enum value: 0 - NoReason, 1 - Unenrolled, 2 - Finished","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The enrollment has not ended; the record is still in the sequence.","1":"The record was removed before finishing, for example manually, by a process, by a step condition or because the sequence expired.","2":"The record went through all steps of the sequence."}},"end_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the enrolment ended (completed or unenrolled). Empty while the enrolment is active."},"excluded_from_stats":{"type":"boolean","example":false,"description":"True when this enrolment is excluded from sequence statistics (e.g. after a stats reset)."},"lead_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled lead."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled opportunity."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled project."},"start_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the enrolment started."}}},"batchEmailSequenceEnrolledInput":{"description":"Field values of an EmailSequenceEnrolled record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled account."},"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the enrolment, or empty for runs triggered by automation."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application (e.g. browser, automation, third-party integration) the enrolment was triggered in."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled contact."},"email_sequence_activity_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the activity log run that produced this enrolment."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence this enrolment belongs to."},"end_reason":{"type":"integer","description":"Why the enrolment ended: Finished after all steps, Unenrolled when the record was removed before finishing, or NoReason while the enrolment is still active.\n\nInteger enum value: 0 - NoReason, 1 - Unenrolled, 2 - Finished","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The enrollment has not ended; the record is still in the sequence.","1":"The record was removed before finishing, for example manually, by a process, by a step condition or because the sequence expired.","2":"The record went through all steps of the sequence."}},"end_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the enrolment ended (completed or unenrolled). Empty while the enrolment is active."},"excluded_from_stats":{"type":"boolean","example":false,"description":"True when this enrolment is excluded from sequence statistics (e.g. after a stats reset)."},"lead_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled lead."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled opportunity."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the enrolled project."},"start_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the enrolment started."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EmailTemplate":{"description":"Reusable email whose body can contain placeholders filled with record values; templates are organized in folders and can be shared.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email_template_folder":{"type":"string","format":"uri","description":"Folder in the template hierarchy that the template belongs to. Empty for templates at the root level.\n\nRelated EmailTemplateFolder record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailTemplateFolder' for its fields."},"owner":{"type":"string","format":"uri","description":"User who owns the template.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"body":{"type":"string","example":"string","description":"HTML body of the template. May use merge-field placeholders that are filled with record values when the template is composed."},"email_template_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the folder the template belongs to. Empty for templates at the root level."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the template owner."},"recent_colors":{"type":"object","description":"Colors recently used in the editor of the template body, as integer color values."},"share_mode":{"type":"integer","description":"Sharing model for the template (e.g. shared with selected sales units, selected users, or open for editing by all).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"sharing_url_is_enabled":{"type":"boolean","example":false,"description":"When true, the template's public sharing URL is active and accessible. Setting to false invalidates outstanding sharing URLs."},"sharing_url_settings":{"type":"object","description":"Public sharing-link configuration: resolved URL plus optional personalisation context (entity type, entity id) used to pre-fill merge fields. Empty when no sharing link is configured."},"subject":{"type":"string","example":"string","description":"Subject line of emails composed from this template. Supports merge-field placeholders."},"type":{"type":"integer","description":"Template format: plain text (TextTemplate), raw HTML (HtmlTemplate) or built in the visual editor (WysiwygTemplate).\n\nInteger enum value: 0 - TextTemplate, 1 - HtmlTemplate, 2 - WysiwygTemplate","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Plain-text template.","1":"Template written as raw HTML.","2":"Template built in the visual (WYSIWYG) editor."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related EmailTemplateSharingSalesUnitRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailTemplateSharingSalesUnitRelation' for its fields."},"description":"Sales units granted shared access to this template (custom share mode)."},"sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related EmailTemplateSharingClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailTemplateSharingClientRelation' for its fields."},"description":"Users granted shared access to this template (custom share mode)."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Files attached to the template (used as default attachments)."}},"required":["is_delete_protected","id","owner","name","owner_id","subject","type"]},"createEmailTemplateInput":{"description":"Field values of a new EmailTemplate record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"body":{"type":"string","example":"string","description":"HTML body of the template. May use merge-field placeholders that are filled with record values when the template is composed."},"email_template_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the folder the template belongs to. Empty for templates at the root level."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the template owner."},"recent_colors":{"type":"object","description":"Colors recently used in the editor of the template body, as integer color values."},"share_mode":{"type":"integer","description":"Sharing model for the template (e.g. shared with selected sales units, selected users, or open for editing by all).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"sharing_url_is_enabled":{"type":"boolean","example":false,"description":"When true, the template's public sharing URL is active and accessible. Setting to false invalidates outstanding sharing URLs."},"sharing_url_settings":{"type":"object","description":"Public sharing-link configuration: resolved URL plus optional personalisation context (entity type, entity id) used to pre-fill merge fields. Empty when no sharing link is configured."},"subject":{"type":"string","example":"string","description":"Subject line of emails composed from this template. Supports merge-field placeholders."},"type":{"type":"integer","description":"Template format: plain text (TextTemplate), raw HTML (HtmlTemplate) or built in the visual editor (WysiwygTemplate).\n\nInteger enum value: 0 - TextTemplate, 1 - HtmlTemplate, 2 - WysiwygTemplate","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Plain-text template.","1":"Template written as raw HTML.","2":"Template built in the visual (WYSIWYG) editor."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailTemplateSharingSalesUnitRelation record."}},"description":"Related EmailTemplateSharingSalesUnitRelation record; see 'createEmailTemplateSharingSalesUnitRelationInput' for its fields."},"description":"Sales units granted shared access to this template (custom share mode)."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailTemplateSharingClientRelation record."}},"description":"Related EmailTemplateSharingClientRelation record; see 'createEmailTemplateSharingClientRelationInput' for its fields."},"description":"Users granted shared access to this template (custom share mode)."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Files attached to the template (used as default attachments)."}},"required":["name","owner_id","subject","type"]},"updateEmailTemplateInput":{"description":"Field values to change on an EmailTemplate record; fields left out keep their values.","properties":{"body":{"type":"string","example":"string","description":"HTML body of the template. May use merge-field placeholders that are filled with record values when the template is composed."},"email_template_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the folder the template belongs to. Empty for templates at the root level."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the template owner."},"recent_colors":{"type":"object","description":"Colors recently used in the editor of the template body, as integer color values."},"share_mode":{"type":"integer","description":"Sharing model for the template (e.g. shared with selected sales units, selected users, or open for editing by all).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"sharing_url_is_enabled":{"type":"boolean","example":false,"description":"When true, the template's public sharing URL is active and accessible. Setting to false invalidates outstanding sharing URLs."},"sharing_url_settings":{"type":"object","description":"Public sharing-link configuration: resolved URL plus optional personalisation context (entity type, entity id) used to pre-fill merge fields. Empty when no sharing link is configured."},"subject":{"type":"string","example":"string","description":"Subject line of emails composed from this template. Supports merge-field placeholders."},"type":{"type":"integer","description":"Template format: plain text (TextTemplate), raw HTML (HtmlTemplate) or built in the visual editor (WysiwygTemplate).\n\nInteger enum value: 0 - TextTemplate, 1 - HtmlTemplate, 2 - WysiwygTemplate","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Plain-text template.","1":"Template written as raw HTML.","2":"Template built in the visual (WYSIWYG) editor."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailTemplateSharingSalesUnitRelation record."}},"description":"Related EmailTemplateSharingSalesUnitRelation record; see 'updateEmailTemplateSharingSalesUnitRelationInput' for its fields."},"description":"Sales units granted shared access to this template (custom share mode)."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailTemplateSharingClientRelation record."}},"description":"Related EmailTemplateSharingClientRelation record; see 'updateEmailTemplateSharingClientRelationInput' for its fields."},"description":"Users granted shared access to this template (custom share mode)."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Files attached to the template (used as default attachments)."}}},"batchEmailTemplateInput":{"description":"Field values of an EmailTemplate record to create, or to update when its id is set.","properties":{"body":{"type":"string","example":"string","description":"HTML body of the template. May use merge-field placeholders that are filled with record values when the template is composed."},"email_template_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the folder the template belongs to. Empty for templates at the root level."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the template owner."},"recent_colors":{"type":"object","description":"Colors recently used in the editor of the template body, as integer color values."},"share_mode":{"type":"integer","description":"Sharing model for the template (e.g. shared with selected sales units, selected users, or open for editing by all).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"sharing_url_is_enabled":{"type":"boolean","example":false,"description":"When true, the template's public sharing URL is active and accessible. Setting to false invalidates outstanding sharing URLs."},"sharing_url_settings":{"type":"object","description":"Public sharing-link configuration: resolved URL plus optional personalisation context (entity type, entity id) used to pre-fill merge fields. Empty when no sharing link is configured."},"subject":{"type":"string","example":"string","description":"Subject line of emails composed from this template. Supports merge-field placeholders."},"type":{"type":"integer","description":"Template format: plain text (TextTemplate), raw HTML (HtmlTemplate) or built in the visual editor (WysiwygTemplate).\n\nInteger enum value: 0 - TextTemplate, 1 - HtmlTemplate, 2 - WysiwygTemplate","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Plain-text template.","1":"Template written as raw HTML.","2":"Template built in the visual (WYSIWYG) editor."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailTemplateSharingSalesUnitRelation record."}},"description":"Related EmailTemplateSharingSalesUnitRelation record; see 'updateEmailTemplateSharingSalesUnitRelationInput' for its fields."},"description":"Sales units granted shared access to this template (custom share mode)."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EmailTemplateSharingClientRelation record."}},"description":"Related EmailTemplateSharingClientRelation record; see 'updateEmailTemplateSharingClientRelationInput' for its fields."},"description":"Users granted shared access to this template (custom share mode)."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Files attached to the template (used as default attachments)."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EmailTemplateFolder":{"description":"Folder that organizes email templates; folders can be nested.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"parent_email_template_folder":{"type":"string","format":"uri","description":"Parent folder in the template hierarchy. Empty for top-level folders.\n\nRelated EmailTemplateFolder record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailTemplateFolder' for its fields."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"parent_email_template_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent folder in the template hierarchy. Empty for top-level folders."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","name"]},"createEmailTemplateFolderInput":{"description":"Field values of a new EmailTemplateFolder record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"parent_email_template_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent folder in the template hierarchy. Empty for top-level folders."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["name"]},"updateEmailTemplateFolderInput":{"description":"Field values to change on an EmailTemplateFolder record; fields left out keep their values.","properties":{"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"parent_email_template_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent folder in the template hierarchy. Empty for top-level folders."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchEmailTemplateFolderInput":{"description":"Field values of an EmailTemplateFolder record to create, or to update when its id is set.","properties":{"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"parent_email_template_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent folder in the template hierarchy. Empty for top-level folders."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EmailTemplateSharingClientRelation":{"description":"Sharing of an email template with a user, as a watcher or an editor.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User the template is shared with.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"email_template":{"type":"string","format":"uri","description":"Email template being shared.\n\nRelated EmailTemplate record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailTemplate' for its fields."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template shared with the user."},"role":{"type":"integer","description":"Access the sharing gives the user on the template: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","client","email_template","client_id","email_template_id"]},"createEmailTemplateSharingClientRelationInput":{"description":"Field values of a new EmailTemplateSharingClientRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template shared with the user."},"role":{"type":"integer","description":"Access the sharing gives the user on the template: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["client_id","email_template_id"]},"updateEmailTemplateSharingClientRelationInput":{"description":"Field values to change on an EmailTemplateSharingClientRelation record; fields left out keep their values.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template shared with the user."},"role":{"type":"integer","description":"Access the sharing gives the user on the template: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchEmailTemplateSharingClientRelationInput":{"description":"Field values of an EmailTemplateSharingClientRelation record to create, or to update when its id is set.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template shared with the user."},"role":{"type":"integer","description":"Access the sharing gives the user on the template: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EmailTemplateSharingSalesUnitRelation":{"description":"Sharing of an email template with a sales unit, as a watcher or an editor.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email_template":{"type":"string","format":"uri","description":"Email template being shared.\n\nRelated EmailTemplate record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailTemplate' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the template is shared with.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template shared with the sales unit."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the template: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","email_template","unit","email_template_id","unit_id"]},"createEmailTemplateSharingSalesUnitRelationInput":{"description":"Field values of a new EmailTemplateSharingSalesUnitRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template shared with the sales unit."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the template: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["email_template_id","unit_id"]},"updateEmailTemplateSharingSalesUnitRelationInput":{"description":"Field values to change on an EmailTemplateSharingSalesUnitRelation record; fields left out keep their values.","properties":{"email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template shared with the sales unit."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the template: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchEmailTemplateSharingSalesUnitRelationInput":{"description":"Field values of an EmailTemplateSharingSalesUnitRelation record to create, or to update when its id is set.","properties":{"email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template shared with the sales unit."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the template: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EmailThreadMailboxClientReadState":{"description":"Time a user last read an email conversation in a mailbox, telling which conversations have unread emails.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User whose read state of the email thread is tracked.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user whose read state of the email thread is tracked."},"last_read_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when the user last read the email thread in the mailbox."},"mailbox_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the mailbox (connected email account) the email thread belongs to."},"thread_or_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email thread, or the id of the email itself when it does not belong to a thread."}},"required":["is_delete_protected","id","client","client_id","mailbox_id","thread_or_id"]},"createEmailThreadMailboxClientReadStateInput":{"description":"Field values of a new EmailThreadMailboxClientReadState record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user whose read state of the email thread is tracked."},"last_read_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when the user last read the email thread in the mailbox."},"mailbox_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the mailbox (connected email account) the email thread belongs to."},"thread_or_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email thread, or the id of the email itself when it does not belong to a thread."}},"required":["client_id","mailbox_id","thread_or_id"]},"updateEmailThreadMailboxClientReadStateInput":{"description":"Field values to change on an EmailThreadMailboxClientReadState record; fields left out keep their values.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user whose read state of the email thread is tracked."},"last_read_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when the user last read the email thread in the mailbox."},"mailbox_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the mailbox (connected email account) the email thread belongs to."},"thread_or_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email thread, or the id of the email itself when it does not belong to a thread."}}},"batchEmailThreadMailboxClientReadStateInput":{"description":"Field values of an EmailThreadMailboxClientReadState record to create, or to update when its id is set.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user whose read state of the email thread is tracked."},"last_read_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when the user last read the email thread in the mailbox."},"mailbox_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the mailbox (connected email account) the email thread belongs to."},"thread_or_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email thread, or the id of the email itself when it does not belong to a thread."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Entity":{"description":"Kind of record in the space, such as Account, Lead or a custom entity, with its display names and behavior.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"entity_name":{"type":"string","example":"string","description":"Stable identifier of the entity (e.g. \"Account\", \"Lead\", \"Opportunity\").","readOnly":true},"table_name":{"type":"string","example":"string","description":"Storage identifier of the entity. Read-only.","readOnly":true},"table_ex":{"type":"string","example":"string","description":"Storage identifier of the entity's custom-field data. Read-only.","readOnly":true},"table_data_ex":{"type":"string","example":"string","description":"Storage identifier of the entity's option relation data. Read-only.","readOnly":true},"default_view_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the field used as the default display label for records of this entity.","readOnly":true},"abstract_entity_id":{"type":"string","example":"string","description":"For sub-entities (e.g. Lead/Opportunity sharing a LeadOppty parent), the entity name of the parent abstract entity. Empty for stand-alone entities.","readOnly":true},"entity_type":{"type":"integer","format":"int32","example":1,"description":"Kind of the entity in the platform: business entity, system schema, custom entity, etc.","readOnly":true},"preference_order":{"type":"integer","format":"int32","example":1,"description":"Display order used to sort entities in pickers and navigation lists; lower values appear first.","readOnly":true},"allows_multiple_relation":{"type":"boolean","example":false,"description":"True when records of this entity can be linked to multiple records of the same other entity through the same relation.","readOnly":true},"has_draft":{"type":"boolean","example":false,"description":"True when records of this entity support drafts (changes go through a draft before being published).","readOnly":true},"access_mode":{"type":"integer","format":"int32","example":1,"description":"Access scope of records of this entity: shared across the entire space, scoped to a sales unit, or owner-only.","readOnly":true},"icon":{"type":"integer","format":"int32","example":1,"description":"Numeric icon identifier used to render the entity in the UI.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"True when the entity is marked as deleted (soft-delete). Read-only at the entity-metadata level.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"settings":{"type":"object","description":"Optional space-level configuration for the entity (e.g. UI/feature flags). Empty when no overrides are set."},"name_singular":{"type":"string","example":"string","description":"Display name of the entity in singular form (e.g. \"Account\")."},"name_plural":{"type":"string","example":"string","description":"Display name of the entity in plural form (e.g. \"Accounts\")."}},"required":["is_delete_protected","id","default_view_field_id","abstract_entity_id","entity_type","preference_order","has_draft","access_mode","icon"]},"EntityFitness":{"description":"Fitness configuration of a lead or opportunity type: the indicators that flag records of that type needing attention.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"lead_type":{"type":"string","format":"uri","description":"Lead type this fitness configuration applies to. Set when configuring fitness for leads.\n\nRelated LeadType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadType' for its fields."},"oppty_type":{"type":"string","format":"uri","description":"Opportunity type this fitness configuration applies to. Set when configuring fitness for opportunities.\n\nRelated OpportunityType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpportunityType' for its fields."},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type this fitness configuration applies to. Set when configuring fitness for leads."},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"indicator_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related EntityFitnessIndicator record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EntityFitnessIndicator' for its fields."},"description":"Fitness indicators (system or custom rules) defined for this configuration."},"entity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity type this fitness configuration applies to."},"entity_type":{"type":"integer","description":"Entity kind this fitness configuration applies to (Lead or Opportunity). Derived from whichever of lead_type/oppty_type is set.\n\nInteger enum value: 1 - Lead, 2 - Account, 3 - Contact, 4 - Opportunity, 5 - Task, 6 - Appointment, 7 - OpptyProductRelation, 8 - Project, 9 - Quote, 10 - OnlineForm, 11 - CustomEntity, 12 - Product","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","3":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","5":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","6":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","7":"Product line of an opportunity.","8":"Project delivered for an account or run internally, with its objectives, activities and progress.","9":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","10":"Submission (response) of an online form, with the answers and the records it created or updated.","11":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","12":"Product or service in the catalog that can be added as a line item to opportunities and quotes."}}},"required":["is_delete_protected","id","entity_type_id","entity_type"]},"createEntityFitnessInput":{"description":"Field values of a new EntityFitness record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"indicator_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EntityFitnessIndicator record."}},"description":"Related EntityFitnessIndicator record; see 'createEntityFitnessIndicatorInput' for its fields."},"description":"Fitness indicators (system or custom rules) defined for this configuration."}}},"updateEntityFitnessInput":{"description":"Field values to change on an EntityFitness record; fields left out keep their values.","properties":{"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"indicator_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EntityFitnessIndicator record."}},"description":"Related EntityFitnessIndicator record; see 'updateEntityFitnessIndicatorInput' for its fields."},"description":"Fitness indicators (system or custom rules) defined for this configuration."}}},"batchEntityFitnessInput":{"description":"Field values of an EntityFitness record to create, or to update when its id is set.","properties":{"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"indicator_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related EntityFitnessIndicator record."}},"description":"Related EntityFitnessIndicator record; see 'updateEntityFitnessIndicatorInput' for its fields."},"description":"Fitness indicators (system or custom rules) defined for this configuration."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EntityFitnessIndicator":{"description":"Indicator of a fitness configuration: a rule that flags lead or opportunity records needing attention and suggests how to fix them.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"entity_fitness":{"type":"string","format":"uri","description":"Fitness configuration this indicator belongs to.\n\nRelated EntityFitness record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EntityFitness' for its fields."},"description":{"type":"string","example":"string","description":"Description of what the indicator measures, shown in the UI."},"description_use_lang":{"type":"boolean","example":false,"description":"When true, description is treated as a translation key and localized in the UI."},"entity_fitness_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the fitness configuration."},"how_to_fix":{"type":"string","example":"string","description":"Suggested remediation text shown to the user when a record triggers this indicator."},"how_to_fix_use_lang":{"type":"boolean","example":false,"description":"When true, how_to_fix is treated as a translation key and localized in the UI."},"is_enabled":{"type":"boolean","example":false,"description":"When false, the indicator is configured but not evaluated for records."},"name":{"type":"string","example":"string","description":"Display name of the indicator."},"name_use_lang":{"type":"boolean","example":false,"description":"When true, name is treated as a translation key and localized in the UI; otherwise the literal text is shown."},"settings":{"type":"string","format":"binary","example":"blob","description":"Indicator rules. For system indicators contains three thresholds (Notice, Warning, Error); for custom indicators contains user-defined filter rules. This payload conforms to the `FitnessIndicatorSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/FitnessIndicatorSettings.json","description":"FitnessIndicatorSettings JSON Schema"}},"type":{"type":"integer","description":"Rule the indicator evaluates. Custom indicators use user-defined filter rules and can be deleted; all other values are built-in system indicators with three threshold rules in settings that cannot be deleted.\n\nInteger enum value: 1 - Custom, 2 - LowEmailOutreach, 3 - LowEmailEngagement, 4 - TasksOverdue, 5 - NoFollowUp, 6 - ClosingDateOverdue, 7 - SalesStepVelocityOverdue, 8 - SalesCycleOverdue, 9 - ManyClosingDateUpdates, 10 - MovedToPreviousStep, 11 - RankingDecrease, 12 - ValueDecrease","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"User-defined filter conditions; each matching condition sets its configured warning level.","2":"Too few emails sent to the record, its accounts or contacts within the configured number of days.","3":"Too few emails received from the record, its accounts or contacts within the configured number of days.","4":"A related task is overdue by the configured number of days, optionally limited to selected task types.","5":"The record has no scheduled activity, optionally limited to selected activity types.","6":"The opportunity's closing date is in the past.","7":"The opportunity has stayed in its current sales step longer than the step's time frame.","8":"The opportunity is older than the configured number of days.","9":"The opportunity's closing date has been changed at least the configured number of times.","10":"The opportunity was moved back to an earlier sales step than one it had already reached.","11":"The opportunity's ranking decreased within the configured period.","12":"The opportunity's value decreased within the configured period, by amount or percentage."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","entity_fitness","description","description_use_lang","entity_fitness_id","how_to_fix","how_to_fix_use_lang","is_enabled","name","name_use_lang","settings","type"]},"createEntityFitnessIndicatorInput":{"description":"Field values of a new EntityFitnessIndicator record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"description":{"type":"string","example":"string","description":"Description of what the indicator measures, shown in the UI."},"description_use_lang":{"type":"boolean","example":false,"description":"When true, description is treated as a translation key and localized in the UI."},"entity_fitness_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the fitness configuration."},"how_to_fix":{"type":"string","example":"string","description":"Suggested remediation text shown to the user when a record triggers this indicator."},"how_to_fix_use_lang":{"type":"boolean","example":false,"description":"When true, how_to_fix is treated as a translation key and localized in the UI."},"is_enabled":{"type":"boolean","example":false,"description":"When false, the indicator is configured but not evaluated for records."},"name":{"type":"string","example":"string","description":"Display name of the indicator."},"name_use_lang":{"type":"boolean","example":false,"description":"When true, name is treated as a translation key and localized in the UI; otherwise the literal text is shown."},"settings":{"type":"string","format":"binary","example":"blob","description":"Indicator rules. For system indicators contains three thresholds (Notice, Warning, Error); for custom indicators contains user-defined filter rules. This payload conforms to the `FitnessIndicatorSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/FitnessIndicatorSettings.json","description":"FitnessIndicatorSettings JSON Schema"}},"type":{"type":"integer","description":"Rule the indicator evaluates. Custom indicators use user-defined filter rules and can be deleted; all other values are built-in system indicators with three threshold rules in settings that cannot be deleted.\n\nInteger enum value: 1 - Custom, 2 - LowEmailOutreach, 3 - LowEmailEngagement, 4 - TasksOverdue, 5 - NoFollowUp, 6 - ClosingDateOverdue, 7 - SalesStepVelocityOverdue, 8 - SalesCycleOverdue, 9 - ManyClosingDateUpdates, 10 - MovedToPreviousStep, 11 - RankingDecrease, 12 - ValueDecrease","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"User-defined filter conditions; each matching condition sets its configured warning level.","2":"Too few emails sent to the record, its accounts or contacts within the configured number of days.","3":"Too few emails received from the record, its accounts or contacts within the configured number of days.","4":"A related task is overdue by the configured number of days, optionally limited to selected task types.","5":"The record has no scheduled activity, optionally limited to selected activity types.","6":"The opportunity's closing date is in the past.","7":"The opportunity has stayed in its current sales step longer than the step's time frame.","8":"The opportunity is older than the configured number of days.","9":"The opportunity's closing date has been changed at least the configured number of times.","10":"The opportunity was moved back to an earlier sales step than one it had already reached.","11":"The opportunity's ranking decreased within the configured period.","12":"The opportunity's value decreased within the configured period, by amount or percentage."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["description","description_use_lang","entity_fitness_id","how_to_fix","how_to_fix_use_lang","is_enabled","name","name_use_lang","settings","type"]},"updateEntityFitnessIndicatorInput":{"description":"Field values to change on an EntityFitnessIndicator record; fields left out keep their values.","properties":{"description":{"type":"string","example":"string","description":"Description of what the indicator measures, shown in the UI."},"description_use_lang":{"type":"boolean","example":false,"description":"When true, description is treated as a translation key and localized in the UI."},"entity_fitness_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the fitness configuration."},"how_to_fix":{"type":"string","example":"string","description":"Suggested remediation text shown to the user when a record triggers this indicator."},"how_to_fix_use_lang":{"type":"boolean","example":false,"description":"When true, how_to_fix is treated as a translation key and localized in the UI."},"is_enabled":{"type":"boolean","example":false,"description":"When false, the indicator is configured but not evaluated for records."},"name":{"type":"string","example":"string","description":"Display name of the indicator."},"name_use_lang":{"type":"boolean","example":false,"description":"When true, name is treated as a translation key and localized in the UI; otherwise the literal text is shown."},"settings":{"type":"string","format":"binary","example":"blob","description":"Indicator rules. For system indicators contains three thresholds (Notice, Warning, Error); for custom indicators contains user-defined filter rules. This payload conforms to the `FitnessIndicatorSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/FitnessIndicatorSettings.json","description":"FitnessIndicatorSettings JSON Schema"}},"type":{"type":"integer","description":"Rule the indicator evaluates. Custom indicators use user-defined filter rules and can be deleted; all other values are built-in system indicators with three threshold rules in settings that cannot be deleted.\n\nInteger enum value: 1 - Custom, 2 - LowEmailOutreach, 3 - LowEmailEngagement, 4 - TasksOverdue, 5 - NoFollowUp, 6 - ClosingDateOverdue, 7 - SalesStepVelocityOverdue, 8 - SalesCycleOverdue, 9 - ManyClosingDateUpdates, 10 - MovedToPreviousStep, 11 - RankingDecrease, 12 - ValueDecrease","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"User-defined filter conditions; each matching condition sets its configured warning level.","2":"Too few emails sent to the record, its accounts or contacts within the configured number of days.","3":"Too few emails received from the record, its accounts or contacts within the configured number of days.","4":"A related task is overdue by the configured number of days, optionally limited to selected task types.","5":"The record has no scheduled activity, optionally limited to selected activity types.","6":"The opportunity's closing date is in the past.","7":"The opportunity has stayed in its current sales step longer than the step's time frame.","8":"The opportunity is older than the configured number of days.","9":"The opportunity's closing date has been changed at least the configured number of times.","10":"The opportunity was moved back to an earlier sales step than one it had already reached.","11":"The opportunity's ranking decreased within the configured period.","12":"The opportunity's value decreased within the configured period, by amount or percentage."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchEntityFitnessIndicatorInput":{"description":"Field values of an EntityFitnessIndicator record to create, or to update when its id is set.","properties":{"description":{"type":"string","example":"string","description":"Description of what the indicator measures, shown in the UI."},"description_use_lang":{"type":"boolean","example":false,"description":"When true, description is treated as a translation key and localized in the UI."},"entity_fitness_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the fitness configuration."},"how_to_fix":{"type":"string","example":"string","description":"Suggested remediation text shown to the user when a record triggers this indicator."},"how_to_fix_use_lang":{"type":"boolean","example":false,"description":"When true, how_to_fix is treated as a translation key and localized in the UI."},"is_enabled":{"type":"boolean","example":false,"description":"When false, the indicator is configured but not evaluated for records."},"name":{"type":"string","example":"string","description":"Display name of the indicator."},"name_use_lang":{"type":"boolean","example":false,"description":"When true, name is treated as a translation key and localized in the UI; otherwise the literal text is shown."},"settings":{"type":"string","format":"binary","example":"blob","description":"Indicator rules. For system indicators contains three thresholds (Notice, Warning, Error); for custom indicators contains user-defined filter rules. This payload conforms to the `FitnessIndicatorSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/FitnessIndicatorSettings.json","description":"FitnessIndicatorSettings JSON Schema"}},"type":{"type":"integer","description":"Rule the indicator evaluates. Custom indicators use user-defined filter rules and can be deleted; all other values are built-in system indicators with three threshold rules in settings that cannot be deleted.\n\nInteger enum value: 1 - Custom, 2 - LowEmailOutreach, 3 - LowEmailEngagement, 4 - TasksOverdue, 5 - NoFollowUp, 6 - ClosingDateOverdue, 7 - SalesStepVelocityOverdue, 8 - SalesCycleOverdue, 9 - ManyClosingDateUpdates, 10 - MovedToPreviousStep, 11 - RankingDecrease, 12 - ValueDecrease","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"User-defined filter conditions; each matching condition sets its configured warning level.","2":"Too few emails sent to the record, its accounts or contacts within the configured number of days.","3":"Too few emails received from the record, its accounts or contacts within the configured number of days.","4":"A related task is overdue by the configured number of days, optionally limited to selected task types.","5":"The record has no scheduled activity, optionally limited to selected activity types.","6":"The opportunity's closing date is in the past.","7":"The opportunity has stayed in its current sales step longer than the step's time frame.","8":"The opportunity is older than the configured number of days.","9":"The opportunity's closing date has been changed at least the configured number of times.","10":"The opportunity was moved back to an earlier sales step than one it had already reached.","11":"The opportunity's ranking decreased within the configured period.","12":"The opportunity's value decreased within the configured period, by amount or percentage."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EntityHealth":{"description":"Health configuration of an account type, defining when accounts of that type are healthy or in critical health.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"type":{"type":"string","format":"uri","description":"Account type this health configuration applies to.\n\nRelated AccountType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AccountType' for its fields."},"entity_type":{"type":"integer","description":"Entity whose records the health configuration evaluates; currently always Account. Read-only.\n\nInteger enum value: 1 - Lead, 2 - Account, 3 - Contact, 4 - Opportunity, 5 - Task, 6 - Appointment, 7 - OpptyProductRelation, 8 - Project, 9 - Quote, 10 - OnlineForm, 11 - CustomEntity, 12 - Product","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","3":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","5":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","6":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","7":"Product line of an opportunity.","8":"Project delivered for an account or run internally, with its objectives, activities and progress.","9":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","10":"Submission (response) of an online form, with the answers and the records it created or updated.","11":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","12":"Product or service in the catalog that can be added as a line item to opportunities and quotes."}},"is_enabled":{"type":"boolean","example":false,"description":"When false, health is configured but not evaluated for records of this type."},"last_recalculation":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the last full health recalculation across all matching records."},"type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"settings":{"type":"string","format":"binary","example":"blob","description":"Health configuration: indicator filter definitions for healthy and critical-health states. Stored as a versioned JSON document; updates create a new history entry. This payload conforms to the `EntityHealthSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityHealthSettings.json","description":"EntityHealthSettings JSON Schema"}},"calculation_progress":{"type":"integer","format":"int32","example":1,"description":"Progress of the in-flight health recalculation as a percentage (0-100). Null when no recalculation has been queued."}},"required":["is_delete_protected","id","type","entity_type","is_enabled","type_id","settings"]},"createEntityHealthInput":{"description":"Field values of a new EntityHealth record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"is_enabled":{"type":"boolean","example":false,"description":"When false, health is configured but not evaluated for records of this type."},"last_recalculation":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the last full health recalculation across all matching records."},"type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_enabled","type_id"]},"updateEntityHealthInput":{"description":"Field values to change on an EntityHealth record; fields left out keep their values.","properties":{"is_enabled":{"type":"boolean","example":false,"description":"When false, health is configured but not evaluated for records of this type."},"last_recalculation":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the last full health recalculation across all matching records."},"type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"settings":{"type":"string","format":"binary","example":"blob","description":"Health configuration: indicator filter definitions for healthy and critical-health states. Stored as a versioned JSON document; updates create a new history entry. This payload conforms to the `EntityHealthSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityHealthSettings.json","description":"EntityHealthSettings JSON Schema"}}}},"batchEntityHealthInput":{"description":"Field values of an EntityHealth record to create, or to update when its id is set.","properties":{"is_enabled":{"type":"boolean","example":false,"description":"When false, health is configured but not evaluated for records of this type."},"last_recalculation":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the last full health recalculation across all matching records."},"type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"settings":{"type":"string","format":"binary","example":"blob","description":"Health configuration: indicator filter definitions for healthy and critical-health states. Stored as a versioned JSON document; updates create a new history entry. This payload conforms to the `EntityHealthSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityHealthSettings.json","description":"EntityHealthSettings JSON Schema"}},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EntityScoring":{"description":"Lead scoring configuration: rules that give leads a score, so that the most promising ones stand out.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"entity_type":{"type":"integer","description":"Entity whose records the scoring configuration scores; currently only Lead is supported. Set on create and cannot be changed.\n\nInteger enum value: 1 - Lead, 2 - Account, 3 - Contact, 4 - Opportunity, 5 - Task, 6 - Appointment, 7 - OpptyProductRelation, 8 - Project, 9 - Quote, 10 - OnlineForm, 11 - CustomEntity, 12 - Product","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","3":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","5":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","6":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","7":"Product line of an opportunity.","8":"Project delivered for an account or run internally, with its objectives, activities and progress.","9":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","10":"Submission (response) of an online form, with the answers and the records it created or updated.","11":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","12":"Product or service in the catalog that can be added as a line item to opportunities and quotes."}},"is_enabled":{"type":"boolean","example":false,"description":"When false, the scoring configuration is defined but not evaluated for records."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"object","description":"Entity scoring definition in json format. This payload conforms to the `EntityScoringSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityScoringSettings.json","description":"EntityScoringSettings JSON Schema"}},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of this scoring configuration among others for the same entity type. Configurations are evaluated in this order until one matches."},"use_lang":{"type":"boolean","example":false,"description":"When true, the configuration name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","entity_type","is_enabled","name","settings","sort_order"]},"createEntityScoringInput":{"description":"Field values of a new EntityScoring record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"entity_type":{"type":"integer","description":"Entity whose records the scoring configuration scores; currently only Lead is supported. Set on create and cannot be changed.\n\nInteger enum value: 1 - Lead, 2 - Account, 3 - Contact, 4 - Opportunity, 5 - Task, 6 - Appointment, 7 - OpptyProductRelation, 8 - Project, 9 - Quote, 10 - OnlineForm, 11 - CustomEntity, 12 - Product","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","3":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","5":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","6":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","7":"Product line of an opportunity.","8":"Project delivered for an account or run internally, with its objectives, activities and progress.","9":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","10":"Submission (response) of an online form, with the answers and the records it created or updated.","11":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","12":"Product or service in the catalog that can be added as a line item to opportunities and quotes."}},"is_enabled":{"type":"boolean","example":false,"description":"When false, the scoring configuration is defined but not evaluated for records."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"object","description":"Entity scoring definition in json format. This payload conforms to the `EntityScoringSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityScoringSettings.json","description":"EntityScoringSettings JSON Schema"}},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of this scoring configuration among others for the same entity type. Configurations are evaluated in this order until one matches."},"use_lang":{"type":"boolean","example":false,"description":"When true, the configuration name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["entity_type","is_enabled","name","settings","sort_order"]},"updateEntityScoringInput":{"description":"Field values to change on an EntityScoring record; fields left out keep their values.","properties":{"is_enabled":{"type":"boolean","example":false,"description":"When false, the scoring configuration is defined but not evaluated for records."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"object","description":"Entity scoring definition in json format. This payload conforms to the `EntityScoringSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityScoringSettings.json","description":"EntityScoringSettings JSON Schema"}},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of this scoring configuration among others for the same entity type. Configurations are evaluated in this order until one matches."},"use_lang":{"type":"boolean","example":false,"description":"When true, the configuration name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchEntityScoringInput":{"description":"Field values of an EntityScoring record to create, or to update when its id is set.","properties":{"is_enabled":{"type":"boolean","example":false,"description":"When false, the scoring configuration is defined but not evaluated for records."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"object","description":"Entity scoring definition in json format. This payload conforms to the `EntityScoringSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityScoringSettings.json","description":"EntityScoringSettings JSON Schema"}},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of this scoring configuration among others for the same entity type. Configurations are evaluated in this order until one matches."},"use_lang":{"type":"boolean","example":false,"description":"When true, the configuration name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"EntitySettings":{"description":"Space-wide settings of an entity, such as the default columns of its lists.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"default_list_columns":{"type":"string","format":"binary","example":"blob","description":"Default column configuration applied to list views of this entity (which fields are shown, their widths, frozen state, and whether to push the configuration to existing users)."},"is_published":{"type":"boolean","example":false,"description":"True when the settings are published; false while they exist only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","has_draft","id","default_list_columns"]},"createEntitySettingsInput":{"description":"Field values of a new EntitySettings record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"default_list_columns":{"type":"string","format":"binary","example":"blob","description":"Default column configuration applied to list views of this entity (which fields are shown, their widths, frozen state, and whether to push the configuration to existing users)."},"is_published":{"type":"boolean","example":false,"description":"True when the settings are published; false while they exist only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["default_list_columns"]},"updateEntitySettingsInput":{"description":"Field values to change on an EntitySettings record; fields left out keep their values.","properties":{"default_list_columns":{"type":"string","format":"binary","example":"blob","description":"Default column configuration applied to list views of this entity (which fields are shown, their widths, frozen state, and whether to push the configuration to existing users)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchEntitySettingsInput":{"description":"Field values of an EntitySettings record to create, or to update when its id is set.","properties":{"default_list_columns":{"type":"string","format":"binary","example":"blob","description":"Default column configuration applied to list views of this entity (which fields are shown, their widths, frozen state, and whether to push the configuration to existing users)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Field":{"description":"Field of an entity, built-in or custom, with its name, type and configuration.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"True when the field is marked as deleted (soft-delete)."},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"entity_name":{"type":"string","example":"string","description":"Related entity name for field (e.g. Account, Contact, Lead, Opportunity, ...). Must be a concrete entity: abstract parents such as LeadOppty or Activity are rejected. To share a field between Lead and Opportunity (or Task and Appointment), create it on one of them and set mapDependency to the other.","readOnly":true},"api_name":{"type":"string","example":"string","description":"Immutable and generated name. This name is used for integrations."},"name":{"type":"string","example":"string","description":"User friendly name for field."},"use_lang":{"type":"integer","format":"int32","example":1,"description":"When true, the field name is treated as a translation key and resolved through the translation system; otherwise the literal name is shown."},"column_name":{"type":"string","example":"string","description":"Storage column name for the field; used as the filter key in API queries."},"column_source":{"type":"integer","format":"int32","example":1,"description":"Storage origin of the field: on the main entity record, on the custom-field data record, or computed.","readOnly":true},"relation_id":{"type":"string","example":"string","description":"For relation-typed fields, identifier of the relation kind that connects this entity to the related entity. Empty for non-relation fields."},"relation_with_entity_id":{"type":"string","example":"string","description":"For relation-typed fields, the entity the field points to (e.g. Contact, Account). Empty for non-relation fields."},"shared_with_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"When the field is shared between abstract entities (e.g. Lead and Opportunity), id of the counterpart field on the other entity. Empty when the field is not shared."},"system_type":{"type":"integer","format":"int32","example":1,"description":"Whether the field is System (built-in, immutable), Protected (built-in, limited changes), or Custom (user-created).","readOnly":true},"type_id":{"type":"string","example":"string","description":"Type of the field. Supported field types are: checkbox, currency, currency_foreign, date, datetime, dropdown, email, float, input, integer, multiselect_checkbox, phone, radio, sequence, text_area, url"},"composite_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"For sub-fields of a composite field (e.g. the value/currency parts of a foreign currency field), id of the parent composite field. Empty for top-level fields."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Optional custom data set id can be set."},"parent_options_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"For dependent dropdown/radio fields, id of the parent field whose selected value restricts the options shown on this field."},"calc_formula":{"type":"string","example":"string","description":"Calculated formula used for fields which supports calculation."},"default_value":{"type":"string","example":"string","description":"Value pre-filled into this field on newly created records, as text converted to the field type; empty for no default. Accepted only by field types that support a default value."},"sequence_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"For sequence-typed fields, id grouping the FieldSequence rows that drive auto-numbering for this field."},"sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Deprecated; always returns null. Use sequence_set_id and FieldSequence instead."},"system_required":{"type":"boolean","example":false,"description":"True when the field cannot be made optional (enforced by the platform).","readOnly":true},"is_published":{"type":"boolean","example":false,"description":"True when the field configuration is published; false while the field exists only as an unpublished draft.","readOnly":true},"system_readonly":{"type":"boolean","example":false,"description":"True when the field cannot be made writable (enforced by the platform).","readOnly":true},"use_in_global_search":{"type":"boolean","example":false,"description":"If this field is allowed in global search."},"settings":{"type":"object","description":"Type-specific configuration for the field (e.g. rollup definition, calculated formula, AI options). Shape depends on type_id; null for fields that need no extra configuration. This payload conforms to the `FieldOptionsProperty` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/FieldOptionsProperty.json","description":"FieldOptionsProperty JSON Schema"}},"is_unique":{"type":"boolean","example":false,"description":"If true, then there will be an API validation if value of entity is unique.","readOnly":true},"data_set":{"type":"string","format":"uri","description":"For dropdown, radio, and multiselect-checkbox fields, the set of available options. Empty for other field types.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"lookup":{"type":"object","description":"Lookup field definition."},"sequence_pattern":{"type":"string","example":"string","description":"Deprecated - previously returned sequence pattern used for sequence type of field."},"sequence":{"type":"object","description":"Sequence field definition."},"rollup":{"type":"object","description":"Rollup field definition."},"options":{"type":"object","description":"Type-specific settings of the field, such as the decimal places of a number or the display of a record card; the shape depends on type_id. Empty for types without settings."},"ai_options":{"type":"object","description":"AI Smart Field options. Available for input, text_area, integer, float, email, phone, url, currency."},"advanced_formula":{"type":"object","description":"Formula of a calculated formula field - the expression, its result type and display - as a JSON object conforming to the `AdvancedFormulaProperty` type; empty for other field types."},"source_field_id":{"type":"string","example":"string","description":"For derived fields, id of the underlying source field that drives this field's value (e.g. the value side of a composite currency field)."},"source_type_id":{"type":"string","example":"string","description":"Underlying primitive type id of the field, after resolving composite/rollup/lookup wrappers."},"use_in_interface_preview":{"type":"boolean","example":false,"description":"True when the field can be used in the record interface preview pane."},"translated_name":{"type":"string","example":"string","description":"Field name resolved into the current user's language. When use_lang is true, the name is looked up via the translation system; otherwise name is returned as-is."},"field_permissions":{"type":"string","format":"uri","description":"Per-user-role access overrides for this field. Empty when the field uses default access (full access for all roles).\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"original_dataset_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"When multiple dropdown/radio fields share a data set, id of the field that originally defined the data set. Null when this field is the originator or has no data set."},"name_translations":{"type":"string","format":"binary","example":"blob","description":"Map of locale codes to translated field names (e.g. {\"en-US\": \"First name\", \"de-DE\": \"Vorname\"}). Empty when no translations are defined."},"name_translated":{"type":"string","example":"string","description":"Field name in the current user's language, taken from name_translations. Empty when no translation is available for that language."},"primitive_type":{"type":"string","example":"string","description":"Primitive value type of the field (e.g. STRING, INT, BOOL, DATE, ENUM), derived from source_type_id."},"is_readonly_on_recurrent_appointment":{"type":"boolean","example":false,"description":"True when the field cannot be edited on individual occurrences of a recurring appointment (changes must be made on the recurrence master)."},"is_available_for_webresource":{"type":"boolean","example":false,"description":"True when the field can be referenced from a Webresource URL template."},"is_available_for_advanced_formula":{"type":"boolean","example":false,"description":"True when the field can be used as an input in an advanced calculated formula expression on this entity."}},"required":["is_delete_protected","has_draft","id","entity_name","name","type_id","data_set","source_field_id","source_type_id","use_in_interface_preview","translated_name","field_permissions","name_translations","name_translated","primitive_type","is_readonly_on_recurrent_appointment","is_available_for_webresource","is_available_for_advanced_formula"]},"createFieldInput":{"description":"Field values of a new Field record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"entity_name":{"type":"string","example":"string","description":"Related entity name for field (e.g. Account, Contact, Lead, Opportunity, ...). Must be a concrete entity: abstract parents such as LeadOppty or Activity are rejected. To share a field between Lead and Opportunity (or Task and Appointment), create it on one of them and set mapDependency to the other.","readOnly":true},"name":{"type":"string","example":"string","description":"User friendly name for field."},"type_id":{"type":"string","example":"string","description":"Type of the field. Supported field types are: checkbox, currency, currency_foreign, date, datetime, dropdown, email, float, input, integer, multiselect_checkbox, phone, radio, sequence, text_area, url"},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Optional custom data set id can be set."},"parent_options_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"For dependent dropdown/radio fields, id of the parent field whose selected value restricts the options shown on this field."},"calc_formula":{"type":"string","example":"string","description":"Calculated formula used for fields which supports calculation."},"default_value":{"type":"string","example":"string","description":"Value pre-filled into this field on newly created records, as text converted to the field type; empty for no default. Accepted only by field types that support a default value."},"is_unique":{"type":"boolean","example":false,"description":"If true, then there will be an API validation if value of entity is unique.","readOnly":true},"name_translations":{"type":"string","format":"binary","example":"blob","description":"Map of locale codes to translated field names (e.g. {\"en-US\": \"First name\", \"de-DE\": \"Vorname\"}). Empty when no translations are defined."}},"required":["entity_name","name","type_id"]},"updateFieldInput":{"description":"Field values to change on a Field record; fields left out keep their values.","properties":{"name":{"type":"string","example":"string","description":"User friendly name for field."},"parent_options_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"For dependent dropdown/radio fields, id of the parent field whose selected value restricts the options shown on this field."},"calc_formula":{"type":"string","example":"string","description":"Calculated formula used for fields which supports calculation."},"default_value":{"type":"string","example":"string","description":"Value pre-filled into this field on newly created records, as text converted to the field type; empty for no default. Accepted only by field types that support a default value."},"name_translations":{"type":"string","format":"binary","example":"blob","description":"Map of locale codes to translated field names (e.g. {\"en-US\": \"First name\", \"de-DE\": \"Vorname\"}). Empty when no translations are defined."}}},"batchFieldInput":{"description":"Field values of a Field record to create, or to update when its id is set.","properties":{"name":{"type":"string","example":"string","description":"User friendly name for field."},"parent_options_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"For dependent dropdown/radio fields, id of the parent field whose selected value restricts the options shown on this field."},"calc_formula":{"type":"string","example":"string","description":"Calculated formula used for fields which supports calculation."},"default_value":{"type":"string","example":"string","description":"Value pre-filled into this field on newly created records, as text converted to the field type; empty for no default. Accepted only by field types that support a default value."},"name_translations":{"type":"string","format":"binary","example":"blob","description":"Map of locale codes to translated field names (e.g. {\"en-US\": \"First name\", \"de-DE\": \"Vorname\"}). Empty when no translations are defined."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"FieldMapping":{"description":"Rules for copying field values from a source record to a new target record, for example when a lead is qualified into an opportunity.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"is_system":{"type":"boolean","example":false,"description":"True when the mapping is shipped by the platform and cannot be deleted by the user."},"mapping":{"type":"string","format":"binary","example":"blob","description":"Default field-to-field mapping template applied when no per-type-pair mapping matches."},"operation":{"type":"integer","description":"Situation in which the mapping pre-fills a new target record from a source record, such as qualifying a lead into an opportunity or creating a follow-up activity.\n\nInteger enum value: 1 - Default, 2 - Qualification, 3 - FollowUp, 4 - Parent, 5 - QualificationAndAutocreate, 6 - Conversion","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Creating a related record from another record.","2":"Qualifying a lead into an opportunity.","3":"Creating a follow-up task or appointment from an activity.","4":"Creating a child account from its parent account.","5":"Creating an account or contact automatically from lead data during qualification.","6":"Converting a record into a record of another type."}},"source_entity_api_name":{"type":"string","example":"string","description":"API name of the source custom entity. Set only when source_entity_name is \"CustomEntity\"; otherwise empty."},"target_entity_api_name":{"type":"string","example":"string","description":"API name of the target custom entity. Set only when target_entity_name is \"CustomEntity\"; otherwise empty."},"type_mappings":{"type":"string","format":"binary","example":"blob","description":"Per-type-pair field mappings: each entry binds a set of source/target type ids and the field-to-field mapping that applies when both types match."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"source_entity_name":{"type":"string","example":"string","description":"Source entity kind for the mapping (e.g. Lead, Account, Contact). Returns \"CustomEntity\" when the source is a custom entity; the API name is then exposed via source_entity_api_name."},"target_entity_name":{"type":"string","example":"string","description":"Target entity kind for the mapping (e.g. Lead, Account, Contact). Returns \"CustomEntity\" when the target is a custom entity; the API name is then exposed via target_entity_api_name."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Files attached to the mapping (e.g. import source files)."}},"required":["is_delete_protected","id","is_system","source_entity_name","target_entity_name"]},"createFieldMappingInput":{"description":"Field values of a new FieldMapping record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"is_system":{"type":"boolean","example":false,"description":"True when the mapping is shipped by the platform and cannot be deleted by the user."},"mapping":{"type":"string","format":"binary","example":"blob","description":"Default field-to-field mapping template applied when no per-type-pair mapping matches."},"operation":{"type":"integer","description":"Situation in which the mapping pre-fills a new target record from a source record, such as qualifying a lead into an opportunity or creating a follow-up activity.\n\nInteger enum value: 1 - Default, 2 - Qualification, 3 - FollowUp, 4 - Parent, 5 - QualificationAndAutocreate, 6 - Conversion","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Creating a related record from another record.","2":"Qualifying a lead into an opportunity.","3":"Creating a follow-up task or appointment from an activity.","4":"Creating a child account from its parent account.","5":"Creating an account or contact automatically from lead data during qualification.","6":"Converting a record into a record of another type."}},"type_mappings":{"type":"string","format":"binary","example":"blob","description":"Per-type-pair field mappings: each entry binds a set of source/target type ids and the field-to-field mapping that applies when both types match."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Files attached to the mapping (e.g. import source files)."}},"required":["is_system"]},"updateFieldMappingInput":{"description":"Field values to change on a FieldMapping record; fields left out keep their values.","properties":{"is_system":{"type":"boolean","example":false,"description":"True when the mapping is shipped by the platform and cannot be deleted by the user."},"mapping":{"type":"string","format":"binary","example":"blob","description":"Default field-to-field mapping template applied when no per-type-pair mapping matches."},"operation":{"type":"integer","description":"Situation in which the mapping pre-fills a new target record from a source record, such as qualifying a lead into an opportunity or creating a follow-up activity.\n\nInteger enum value: 1 - Default, 2 - Qualification, 3 - FollowUp, 4 - Parent, 5 - QualificationAndAutocreate, 6 - Conversion","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Creating a related record from another record.","2":"Qualifying a lead into an opportunity.","3":"Creating a follow-up task or appointment from an activity.","4":"Creating a child account from its parent account.","5":"Creating an account or contact automatically from lead data during qualification.","6":"Converting a record into a record of another type."}},"type_mappings":{"type":"string","format":"binary","example":"blob","description":"Per-type-pair field mappings: each entry binds a set of source/target type ids and the field-to-field mapping that applies when both types match."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Files attached to the mapping (e.g. import source files)."}}},"batchFieldMappingInput":{"description":"Field values of a FieldMapping record to create, or to update when its id is set.","properties":{"is_system":{"type":"boolean","example":false,"description":"True when the mapping is shipped by the platform and cannot be deleted by the user."},"mapping":{"type":"string","format":"binary","example":"blob","description":"Default field-to-field mapping template applied when no per-type-pair mapping matches."},"operation":{"type":"integer","description":"Situation in which the mapping pre-fills a new target record from a source record, such as qualifying a lead into an opportunity or creating a follow-up activity.\n\nInteger enum value: 1 - Default, 2 - Qualification, 3 - FollowUp, 4 - Parent, 5 - QualificationAndAutocreate, 6 - Conversion","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Creating a related record from another record.","2":"Qualifying a lead into an opportunity.","3":"Creating a follow-up task or appointment from an activity.","4":"Creating a child account from its parent account.","5":"Creating an account or contact automatically from lead data during qualification.","6":"Converting a record into a record of another type."}},"type_mappings":{"type":"string","format":"binary","example":"blob","description":"Per-type-pair field mappings: each entry binds a set of source/target type ids and the field-to-field mapping that applies when both types match."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Files attached to the mapping (e.g. import source files)."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"FieldPermission":{"description":"Access a user role has to a custom field: full access, read-only or hidden.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"field":{"type":"string","format":"uri","description":"Custom field this permission applies to.\n\nRelated Field record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Field' for its fields."},"master_right":{"type":"string","format":"uri","description":"User role granted (or restricted) on the field.\n\nRelated MasterRight record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MasterRight' for its fields."},"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom field."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"permission_level":{"type":"integer","description":"Access the user role gets to the custom field: full access (view and edit), read-only, or hidden.\n\nInteger enum value: 1 - FullAccess, 2 - Readonly, 3 - NoAccess","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The field can be viewed and edited.","2":"The field can be viewed but not edited.","3":"The field is hidden."}},"is_published":{"type":"boolean","example":false,"description":"True when the permission override is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","has_draft","id","field","master_right","field_id","master_right_id"]},"createFieldPermissionInput":{"description":"Field values of a new FieldPermission record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom field."},"master_right_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user role."},"permission_level":{"type":"integer","description":"Access the user role gets to the custom field: full access (view and edit), read-only, or hidden.\n\nInteger enum value: 1 - FullAccess, 2 - Readonly, 3 - NoAccess","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The field can be viewed and edited.","2":"The field can be viewed but not edited.","3":"The field is hidden."}},"is_published":{"type":"boolean","example":false,"description":"True when the permission override is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["field_id","master_right_id"]},"updateFieldPermissionInput":{"description":"Field values to change on a FieldPermission record; fields left out keep their values.","properties":{"permission_level":{"type":"integer","description":"Access the user role gets to the custom field: full access (view and edit), read-only, or hidden.\n\nInteger enum value: 1 - FullAccess, 2 - Readonly, 3 - NoAccess","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The field can be viewed and edited.","2":"The field can be viewed but not edited.","3":"The field is hidden."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchFieldPermissionInput":{"description":"Field values of a FieldPermission record to create, or to update when its id is set.","properties":{"permission_level":{"type":"integer","description":"Access the user role gets to the custom field: full access (view and edit), read-only, or hidden.\n\nInteger enum value: 1 - FullAccess, 2 - Readonly, 3 - NoAccess","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The field can be viewed and edited.","2":"The field can be viewed but not edited.","3":"The field is hidden."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"FieldSequence":{"description":"Numbering pattern of an auto-number field, used to generate its values for records that match the filter of the sequence.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"filter":{"type":"object","description":"Optional filter restricting which records this sequence applies to. Empty means the sequence applies to all records."},"pattern":{"type":"string","example":"string","description":"Pattern template used to generate auto-numbered values (e.g. \"{prefix}{year}-{####}\")."},"sequence_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier grouping all sequences (across entity types) that share the same auto-numbering pattern."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of this sequence within its sequence set; sequences are evaluated in this order, the first whose filter matches is used."},"is_published":{"type":"boolean","example":false,"description":"True when the sequence is published; false while it exists only as an unpublished draft.","readOnly":true}},"required":["is_delete_protected","has_draft","id","pattern","sequence_set_id"]},"Forecast":{"description":"Sales forecast that sums an amount over the opportunities of a pipeline for a period, broken down by levels such as sales units and users.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"field":{"type":"string","format":"uri","description":"Field whose value is summed when computing forecast amounts (typically a currency field on Opportunity).\n\nRelated Field record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Field' for its fields.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User who owns the forecast.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"pipeline":{"type":"string","format":"uri","description":"Pipeline whose opportunities the forecast aggregates.\n\nRelated Pipeline record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Pipeline' for its fields.","readOnly":true},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the forecast."},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Last date covered by the forecast period.","readOnly":true},"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the aggregation field.","readOnly":true},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline whose opportunities the forecast aggregates.","readOnly":true},"settings":{"type":"object","description":"Forecast configuration as a JSON object conforming to the BetterForecastSchema type: currency, period (year + quarter/month), breakdown levels (type), items and quotas, and column layout. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/b/#BetterForecastSchema This payload conforms to the `BetterForecastSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/BetterForecastSchema.json","description":"BetterForecastSchema JSON Schema"}},"share_mode":{"type":"integer","description":"Who besides the owner can access the forecast. Updating it to AllEdit shares the forecast with the users and sales units it covers (see shared_clients and shared_units) and stores the mode as Standard.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"share_mode_params":{"type":"string","example":1,"enum":[1,2],"description":"Legacy additional sharing options; kept with the record but no longer applied.","x-enumDescriptions":{"1":"Legacy option to share with the managers of the selected sales units; no longer applied.","2":"Legacy option to share with the included users; no longer applied."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"First date covered by the forecast period.","readOnly":true},"type":{"type":"object","description":"Order of forecast levels as a JSON array (e.g. [\"Units\", \"Users\"]). Each level adds a grouping dimension to the breakdown.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"shared_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"description":"Users granted shared access to this forecast (custom share mode)."},"shared_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"description":"Sales units granted shared access to this forecast (custom share mode)."}},"required":["is_delete_protected","id","field","owner","pipeline","end_date","field_id","name","owner_id","pipeline_id","settings","start_date","type","shared_clients","shared_units"]},"createForecastInput":{"description":"Field values of a new Forecast record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the forecast."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Forecast configuration as a JSON object conforming to the BetterForecastSchema type: currency, period (year + quarter/month), breakdown levels (type), items and quotas, and column layout. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/b/#BetterForecastSchema This payload conforms to the `BetterForecastSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/BetterForecastSchema.json","description":"BetterForecastSchema JSON Schema"}},"share_mode":{"type":"integer","description":"Who besides the owner can access the forecast. Updating it to AllEdit shares the forecast with the users and sales units it covers (see shared_clients and shared_units) and stores the mode as Standard.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"share_mode_params":{"type":"string","example":1,"enum":[1,2],"description":"Legacy additional sharing options; kept with the record but no longer applied.","x-enumDescriptions":{"1":"Legacy option to share with the managers of the selected sales units; no longer applied.","2":"Legacy option to share with the included users; no longer applied."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"shared_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Client record."}},"description":"Related Client record; see 'createClientInput' for its fields."},"description":"Users granted shared access to this forecast (custom share mode)."},"shared_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related SalesUnit record."}},"description":"Related SalesUnit record; see 'createSalesUnitInput' for its fields."},"description":"Sales units granted shared access to this forecast (custom share mode)."}},"required":["name","owner_id","settings","shared_clients","shared_units"]},"updateForecastInput":{"description":"Field values to change on a Forecast record; fields left out keep their values.","properties":{"description":{"type":"string","example":"string","description":"Free-text description shown alongside the forecast."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Forecast configuration as a JSON object conforming to the BetterForecastSchema type: currency, period (year + quarter/month), breakdown levels (type), items and quotas, and column layout. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/b/#BetterForecastSchema This payload conforms to the `BetterForecastSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/BetterForecastSchema.json","description":"BetterForecastSchema JSON Schema"}},"share_mode":{"type":"integer","description":"Who besides the owner can access the forecast. Updating it to AllEdit shares the forecast with the users and sales units it covers (see shared_clients and shared_units) and stores the mode as Standard.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"share_mode_params":{"type":"string","example":1,"enum":[1,2],"description":"Legacy additional sharing options; kept with the record but no longer applied.","x-enumDescriptions":{"1":"Legacy option to share with the managers of the selected sales units; no longer applied.","2":"Legacy option to share with the included users; no longer applied."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"shared_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Client record."}},"description":"Related Client record; see 'updateClientInput' for its fields."},"description":"Users granted shared access to this forecast (custom share mode)."},"shared_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related SalesUnit record."}},"description":"Related SalesUnit record; see 'updateSalesUnitInput' for its fields."},"description":"Sales units granted shared access to this forecast (custom share mode)."}}},"batchForecastInput":{"description":"Field values of a Forecast record to create, or to update when its id is set.","properties":{"description":{"type":"string","example":"string","description":"Free-text description shown alongside the forecast."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Forecast configuration as a JSON object conforming to the BetterForecastSchema type: currency, period (year + quarter/month), breakdown levels (type), items and quotas, and column layout. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/b/#BetterForecastSchema This payload conforms to the `BetterForecastSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/BetterForecastSchema.json","description":"BetterForecastSchema JSON Schema"}},"share_mode":{"type":"integer","description":"Who besides the owner can access the forecast. Updating it to AllEdit shares the forecast with the users and sales units it covers (see shared_clients and shared_units) and stores the mode as Standard.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"share_mode_params":{"type":"string","example":1,"enum":[1,2],"description":"Legacy additional sharing options; kept with the record but no longer applied.","x-enumDescriptions":{"1":"Legacy option to share with the managers of the selected sales units; no longer applied.","2":"Legacy option to share with the included users; no longer applied."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"shared_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Client record."}},"description":"Related Client record; see 'updateClientInput' for its fields."},"description":"Users granted shared access to this forecast (custom share mode)."},"shared_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related SalesUnit record."}},"description":"Related SalesUnit record; see 'updateSalesUnitInput' for its fields."},"description":"Sales units granted shared access to this forecast (custom share mode)."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"FormView":{"description":"Variant of the form of an account, contact, lead or opportunity type that hides or colors selected fields; owned by a user and can be shared.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_type":{"type":"string","format":"uri","description":"Account type the form view applies to. Set when the form view targets accounts.\n\nRelated AccountType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AccountType' for its fields."},"contact_type":{"type":"string","format":"uri","description":"Contact type the form view applies to. Set when the form view targets contacts.\n\nRelated ContactType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ContactType' for its fields."},"lead_type":{"type":"string","format":"uri","description":"Lead type the form view applies to. Set when the form view targets leads.\n\nRelated LeadType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadType' for its fields."},"oppty_type":{"type":"string","format":"uri","description":"Opportunity type the form view applies to. Set when the form view targets opportunities.\n\nRelated OpportunityType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpportunityType' for its fields."},"owner":{"type":"string","format":"uri","description":"User who owns the form view.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type the form view applies to. Set when the form view targets accounts."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type the form view applies to. Set when the form view targets contacts."},"hidden_item_ids":{"type":"object","description":"Ids of fields and webresources hidden from the form for this view."},"item_colors":{"type":"object","description":"Per-item color overrides for fields and webresources in the form, keyed by item id."},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type the form view applies to. Set when the form view targets leads."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"share_mode":{"type":"integer","description":"Who besides the owner can use the form view: nobody (Private, the default), the users and sales units in sharing_clients and sharing_units (Standard), or all users (AllView to view, AllEdit to also edit).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"use_lang":{"type":"boolean","example":false,"description":"When true, the form view name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"entity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the type the form view is configured for, derived from whichever of the per-entity-type relations is set."},"sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related FormViewSharingSalesUnitRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'FormViewSharingSalesUnitRelation' for its fields."},"description":"Sales units that have been granted shared access to this form view (custom share mode)."},"sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related FormViewSharingClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'FormViewSharingClientRelation' for its fields."},"description":"Users that have been granted shared access to this form view (custom share mode)."}},"required":["is_delete_protected","id","owner","hidden_item_ids","item_colors","name","owner_id","entity_type_id"]},"createFormViewInput":{"description":"Field values of a new FormView record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type the form view applies to. Set when the form view targets accounts."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type the form view applies to. Set when the form view targets contacts."},"hidden_item_ids":{"type":"object","description":"Ids of fields and webresources hidden from the form for this view."},"item_colors":{"type":"object","description":"Per-item color overrides for fields and webresources in the form, keyed by item id."},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type the form view applies to. Set when the form view targets leads."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"share_mode":{"type":"integer","description":"Who besides the owner can use the form view: nobody (Private, the default), the users and sales units in sharing_clients and sharing_units (Standard), or all users (AllView to view, AllEdit to also edit).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"use_lang":{"type":"boolean","example":false,"description":"When true, the form view name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related FormViewSharingSalesUnitRelation record."}},"description":"Related FormViewSharingSalesUnitRelation record; see 'createFormViewSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this form view (custom share mode)."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related FormViewSharingClientRelation record."}},"description":"Related FormViewSharingClientRelation record; see 'createFormViewSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this form view (custom share mode)."}},"required":["hidden_item_ids","item_colors","name","owner_id"]},"updateFormViewInput":{"description":"Field values to change on a FormView record; fields left out keep their values.","properties":{"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type the form view applies to. Set when the form view targets accounts."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type the form view applies to. Set when the form view targets contacts."},"hidden_item_ids":{"type":"object","description":"Ids of fields and webresources hidden from the form for this view."},"item_colors":{"type":"object","description":"Per-item color overrides for fields and webresources in the form, keyed by item id."},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type the form view applies to. Set when the form view targets leads."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"share_mode":{"type":"integer","description":"Who besides the owner can use the form view: nobody (Private, the default), the users and sales units in sharing_clients and sharing_units (Standard), or all users (AllView to view, AllEdit to also edit).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"use_lang":{"type":"boolean","example":false,"description":"When true, the form view name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related FormViewSharingSalesUnitRelation record."}},"description":"Related FormViewSharingSalesUnitRelation record; see 'updateFormViewSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this form view (custom share mode)."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related FormViewSharingClientRelation record."}},"description":"Related FormViewSharingClientRelation record; see 'updateFormViewSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this form view (custom share mode)."}}},"batchFormViewInput":{"description":"Field values of a FormView record to create, or to update when its id is set.","properties":{"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type the form view applies to. Set when the form view targets accounts."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type the form view applies to. Set when the form view targets contacts."},"hidden_item_ids":{"type":"object","description":"Ids of fields and webresources hidden from the form for this view."},"item_colors":{"type":"object","description":"Per-item color overrides for fields and webresources in the form, keyed by item id."},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type the form view applies to. Set when the form view targets leads."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"share_mode":{"type":"integer","description":"Who besides the owner can use the form view: nobody (Private, the default), the users and sales units in sharing_clients and sharing_units (Standard), or all users (AllView to view, AllEdit to also edit).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"use_lang":{"type":"boolean","example":false,"description":"When true, the form view name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related FormViewSharingSalesUnitRelation record."}},"description":"Related FormViewSharingSalesUnitRelation record; see 'updateFormViewSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this form view (custom share mode)."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related FormViewSharingClientRelation record."}},"description":"Related FormViewSharingClientRelation record; see 'updateFormViewSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this form view (custom share mode)."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"FormViewSharingClientRelation":{"description":"Sharing of a form view with a user, as a watcher or an editor.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User granted shared access to the form view.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"form_view":{"type":"string","format":"uri","description":"Form view being shared.\n\nRelated FormView record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'FormView' for its fields."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"form_view_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared form view."},"role":{"type":"integer","description":"Access the sharing gives the user on the form view: Watcher can view it, Editor can also edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","client","form_view","client_id","form_view_id"]},"createFormViewSharingClientRelationInput":{"description":"Field values of a new FormViewSharingClientRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"form_view_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared form view."},"role":{"type":"integer","description":"Access the sharing gives the user on the form view: Watcher can view it, Editor can also edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["client_id","form_view_id"]},"updateFormViewSharingClientRelationInput":{"description":"Field values to change on a FormViewSharingClientRelation record; fields left out keep their values.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"form_view_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared form view."},"role":{"type":"integer","description":"Access the sharing gives the user on the form view: Watcher can view it, Editor can also edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchFormViewSharingClientRelationInput":{"description":"Field values of a FormViewSharingClientRelation record to create, or to update when its id is set.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"form_view_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared form view."},"role":{"type":"integer","description":"Access the sharing gives the user on the form view: Watcher can view it, Editor can also edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"FormViewSharingSalesUnitRelation":{"description":"Sharing of a form view with a sales unit, as a watcher or an editor.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_view":{"type":"string","format":"uri","description":"Form view being shared.\n\nRelated FormView record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'FormView' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit granted shared access to the form view.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"form_view_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared form view."},"role":{"type":"integer","description":"Access the sharing gives members and managers of the sales unit on the form view: Watcher can view it, Editor can also edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","form_view","unit","form_view_id","unit_id"]},"createFormViewSharingSalesUnitRelationInput":{"description":"Field values of a new FormViewSharingSalesUnitRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_view_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared form view."},"role":{"type":"integer","description":"Access the sharing gives members and managers of the sales unit on the form view: Watcher can view it, Editor can also edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["form_view_id","unit_id"]},"updateFormViewSharingSalesUnitRelationInput":{"description":"Field values to change on a FormViewSharingSalesUnitRelation record; fields left out keep their values.","properties":{"form_view_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared form view."},"role":{"type":"integer","description":"Access the sharing gives members and managers of the sales unit on the form view: Watcher can view it, Editor can also edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchFormViewSharingSalesUnitRelationInput":{"description":"Field values of a FormViewSharingSalesUnitRelation record to create, or to update when its id is set.","properties":{"form_view_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared form view."},"role":{"type":"integer","description":"Access the sharing gives members and managers of the sales unit on the form view: Watcher can view it, Editor can also edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"GhostContact":{"description":"Placeholder person on an org chart for someone who is not a contact in the space yet, such as an unknown decision maker.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"position":{"type":"string","example":"string","description":"Job title or position of the placeholder contact (org-chart label)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","name"]},"createGhostContactInput":{"description":"Field values of a new GhostContact record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"position":{"type":"string","example":"string","description":"Job title or position of the placeholder contact (org-chart label)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["name"]},"updateGhostContactInput":{"description":"Field values to change on a GhostContact record; fields left out keep their values.","properties":{"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"position":{"type":"string","example":"string","description":"Job title or position of the placeholder contact (org-chart label)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchGhostContactInput":{"description":"Field values of a GhostContact record to create, or to update when its id is set.","properties":{"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"position":{"type":"string","example":"string","description":"Job title or position of the placeholder contact (org-chart label)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"GhostContactAccountAccountRoleRelation":{"description":"Role assigned to a ghost contact on the org chart of an account.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_role":{"type":"string","format":"uri","description":"Account role assigned to the ghost contact.\n\nRelated AccountRole record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AccountRole' for its fields."},"ghost_contact_account_relation":{"type":"string","format":"uri","description":"Ghost-contact-on-account placement this role assignment belongs to.\n\nRelated GhostContactAccountRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'GhostContactAccountRelation' for its fields."},"account_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account role assigned to the ghost contact."},"ghost_contact_account_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost-contact-account placement."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","account_role","ghost_contact_account_relation","account_role_id","ghost_contact_account_relation_id"]},"createGhostContactAccountAccountRoleRelationInput":{"description":"Field values of a new GhostContactAccountAccountRoleRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"ghost_contact_account_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostContactAccountRelation record."}},"description":"Ghost-contact-on-account placement this role assignment belongs to.\n\nRelated GhostContactAccountRelation record; see 'createGhostContactAccountRelationInput' for its fields."},"account_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account role assigned to the ghost contact."},"ghost_contact_account_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost-contact-account placement."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["ghost_contact_account_relation","account_role_id","ghost_contact_account_relation_id"]},"updateGhostContactAccountAccountRoleRelationInput":{"description":"Field values to change on a GhostContactAccountAccountRoleRelation record; fields left out keep their values.","properties":{"ghost_contact_account_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostContactAccountRelation record."}},"description":"Ghost-contact-on-account placement this role assignment belongs to.\n\nRelated GhostContactAccountRelation record; see 'updateGhostContactAccountRelationInput' for its fields."},"account_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account role assigned to the ghost contact."},"ghost_contact_account_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost-contact-account placement."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchGhostContactAccountAccountRoleRelationInput":{"description":"Field values of a GhostContactAccountAccountRoleRelation record to create, or to update when its id is set.","properties":{"ghost_contact_account_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostContactAccountRelation record."}},"description":"Ghost-contact-on-account placement this role assignment belongs to.\n\nRelated GhostContactAccountRelation record; see 'updateGhostContactAccountRelationInput' for its fields."},"account_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account role assigned to the ghost contact."},"ghost_contact_account_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost-contact-account placement."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"GhostContactAccountRelation":{"description":"Placement of a ghost contact on the org chart of an account, with its position and comment.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account whose org chart includes the ghost contact.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"ghost_contact":{"type":"string","format":"uri","description":"Placeholder ghost contact placed on the account org chart.\n\nRelated GhostContact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'GhostContact' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account whose org chart includes the ghost contact."},"comment":{"type":"string","example":"string","description":"Free-text comment shown on the org-chart node."},"ghost_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost contact placed on the account org chart."},"is_assistant":{"type":"boolean","example":false,"description":"True when the ghost contact is rendered as an assistant of its parent in the org chart."},"is_sibling":{"type":"boolean","example":false,"description":"True when the ghost contact is rendered as a sibling rather than a child in the org chart."},"position":{"type":"string","example":"string","description":"Position label shown on the org chart for the ghost contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_roles":{"type":"array","items":{"type":"string","format":"uri","description":"Related GhostContactAccountAccountRoleRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'GhostContactAccountAccountRoleRelation' for its fields."},"description":"Account roles assigned to the ghost contact on this account."}},"required":["is_delete_protected","id","account","ghost_contact","account_id","ghost_contact_id"]},"createGhostContactAccountRelationInput":{"description":"Field values of a new GhostContactAccountRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"ghost_contact":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostContact record."}},"description":"Placeholder ghost contact placed on the account org chart.\n\nRelated GhostContact record; see 'createGhostContactInput' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account whose org chart includes the ghost contact."},"comment":{"type":"string","example":"string","description":"Free-text comment shown on the org-chart node."},"ghost_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost contact placed on the account org chart."},"is_assistant":{"type":"boolean","example":false,"description":"True when the ghost contact is rendered as an assistant of its parent in the org chart."},"is_sibling":{"type":"boolean","example":false,"description":"True when the ghost contact is rendered as a sibling rather than a child in the org chart."},"position":{"type":"string","example":"string","description":"Position label shown on the org chart for the ghost contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostContactAccountAccountRoleRelation record."}},"description":"Related GhostContactAccountAccountRoleRelation record; see 'createGhostContactAccountAccountRoleRelationInput' for its fields."},"description":"Account roles assigned to the ghost contact on this account."}},"required":["ghost_contact","account_id","ghost_contact_id"]},"updateGhostContactAccountRelationInput":{"description":"Field values to change on a GhostContactAccountRelation record; fields left out keep their values.","properties":{"ghost_contact":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostContact record."}},"description":"Placeholder ghost contact placed on the account org chart.\n\nRelated GhostContact record; see 'updateGhostContactInput' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account whose org chart includes the ghost contact."},"comment":{"type":"string","example":"string","description":"Free-text comment shown on the org-chart node."},"ghost_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost contact placed on the account org chart."},"is_assistant":{"type":"boolean","example":false,"description":"True when the ghost contact is rendered as an assistant of its parent in the org chart."},"is_sibling":{"type":"boolean","example":false,"description":"True when the ghost contact is rendered as a sibling rather than a child in the org chart."},"position":{"type":"string","example":"string","description":"Position label shown on the org chart for the ghost contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostContactAccountAccountRoleRelation record."}},"description":"Related GhostContactAccountAccountRoleRelation record; see 'updateGhostContactAccountAccountRoleRelationInput' for its fields."},"description":"Account roles assigned to the ghost contact on this account."}}},"batchGhostContactAccountRelationInput":{"description":"Field values of a GhostContactAccountRelation record to create, or to update when its id is set.","properties":{"ghost_contact":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostContact record."}},"description":"Placeholder ghost contact placed on the account org chart.\n\nRelated GhostContact record; see 'updateGhostContactInput' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account whose org chart includes the ghost contact."},"comment":{"type":"string","example":"string","description":"Free-text comment shown on the org-chart node."},"ghost_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost contact placed on the account org chart."},"is_assistant":{"type":"boolean","example":false,"description":"True when the ghost contact is rendered as an assistant of its parent in the org chart."},"is_sibling":{"type":"boolean","example":false,"description":"True when the ghost contact is rendered as a sibling rather than a child in the org chart."},"position":{"type":"string","example":"string","description":"Position label shown on the org chart for the ghost contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostContactAccountAccountRoleRelation record."}},"description":"Related GhostContactAccountAccountRoleRelation record; see 'updateGhostContactAccountAccountRoleRelationInput' for its fields."},"description":"Account roles assigned to the ghost contact on this account."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"GhostLeadOpptyContactRelation":{"description":"Placement of a ghost contact on the org chart of a lead or an opportunity.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"ghost_contact":{"type":"string","format":"uri","description":"Placeholder ghost contact placed on the lead/opportunity org chart.\n\nRelated GhostContact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'GhostContact' for its fields."},"lead_oppty_contact_group_relation":{"type":"string","format":"uri","description":"Org-chart group the ghost contact belongs to, when grouped.\n\nRelated LeadOpptyContactGroupRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadOpptyContactGroupRelation' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead whose org chart includes the ghost contact. Set when lead_oppty_id resolves to a Lead.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity whose org chart includes the ghost contact. Set when lead_oppty_id resolves to an Opportunity.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"comment":{"type":"string","example":"string","description":"Free-text comment shown on the org-chart node."},"ghost_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost contact placed on the lead/opportunity org chart."},"lead_oppty_contact_group_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent org-chart group."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity."},"position_in_group":{"type":"object","description":"Org-chart layout position of the ghost contact within its group, as a JSON object {\"x\": <int>, \"y\": <int>}."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sales_roles":{"type":"array","items":{"type":"string","format":"uri","description":"Related GhostLeadOpptyContactSalesRoleRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'GhostLeadOpptyContactSalesRoleRelation' for its fields."},"description":"Sales roles assigned to the ghost contact on this lead/opportunity."}},"required":["is_delete_protected","id","ghost_contact","ghost_contact_id","lead_oppty_id"]},"createGhostLeadOpptyContactRelationInput":{"description":"Field values of a new GhostLeadOpptyContactRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"ghost_contact":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostContact record."}},"description":"Placeholder ghost contact placed on the lead/opportunity org chart.\n\nRelated GhostContact record; see 'createGhostContactInput' for its fields."},"lead_oppty_contact_group_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactGroupRelation record."}},"description":"Org-chart group the ghost contact belongs to, when grouped.\n\nRelated LeadOpptyContactGroupRelation record; see 'createLeadOpptyContactGroupRelationInput' for its fields."},"comment":{"type":"string","example":"string","description":"Free-text comment shown on the org-chart node."},"ghost_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost contact placed on the lead/opportunity org chart."},"lead_oppty_contact_group_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent org-chart group."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity."},"position_in_group":{"type":"object","description":"Org-chart layout position of the ghost contact within its group, as a JSON object {\"x\": <int>, \"y\": <int>}."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sales_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostLeadOpptyContactSalesRoleRelation record."}},"description":"Related GhostLeadOpptyContactSalesRoleRelation record; see 'createGhostLeadOpptyContactSalesRoleRelationInput' for its fields."},"description":"Sales roles assigned to the ghost contact on this lead/opportunity."}},"required":["ghost_contact","ghost_contact_id","lead_oppty_id"]},"updateGhostLeadOpptyContactRelationInput":{"description":"Field values to change on a GhostLeadOpptyContactRelation record; fields left out keep their values.","properties":{"ghost_contact":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostContact record."}},"description":"Placeholder ghost contact placed on the lead/opportunity org chart.\n\nRelated GhostContact record; see 'updateGhostContactInput' for its fields."},"lead_oppty_contact_group_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactGroupRelation record."}},"description":"Org-chart group the ghost contact belongs to, when grouped.\n\nRelated LeadOpptyContactGroupRelation record; see 'updateLeadOpptyContactGroupRelationInput' for its fields."},"comment":{"type":"string","example":"string","description":"Free-text comment shown on the org-chart node."},"ghost_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost contact placed on the lead/opportunity org chart."},"lead_oppty_contact_group_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent org-chart group."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity."},"position_in_group":{"type":"object","description":"Org-chart layout position of the ghost contact within its group, as a JSON object {\"x\": <int>, \"y\": <int>}."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sales_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostLeadOpptyContactSalesRoleRelation record."}},"description":"Related GhostLeadOpptyContactSalesRoleRelation record; see 'updateGhostLeadOpptyContactSalesRoleRelationInput' for its fields."},"description":"Sales roles assigned to the ghost contact on this lead/opportunity."}}},"batchGhostLeadOpptyContactRelationInput":{"description":"Field values of a GhostLeadOpptyContactRelation record to create, or to update when its id is set.","properties":{"ghost_contact":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostContact record."}},"description":"Placeholder ghost contact placed on the lead/opportunity org chart.\n\nRelated GhostContact record; see 'updateGhostContactInput' for its fields."},"lead_oppty_contact_group_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactGroupRelation record."}},"description":"Org-chart group the ghost contact belongs to, when grouped.\n\nRelated LeadOpptyContactGroupRelation record; see 'updateLeadOpptyContactGroupRelationInput' for its fields."},"comment":{"type":"string","example":"string","description":"Free-text comment shown on the org-chart node."},"ghost_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost contact placed on the lead/opportunity org chart."},"lead_oppty_contact_group_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent org-chart group."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity."},"position_in_group":{"type":"object","description":"Org-chart layout position of the ghost contact within its group, as a JSON object {\"x\": <int>, \"y\": <int>}."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sales_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostLeadOpptyContactSalesRoleRelation record."}},"description":"Related GhostLeadOpptyContactSalesRoleRelation record; see 'updateGhostLeadOpptyContactSalesRoleRelationInput' for its fields."},"description":"Sales roles assigned to the ghost contact on this lead/opportunity."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"GhostLeadOpptyContactSalesRoleRelation":{"description":"Sales role assigned to a placeholder (ghost) contact on the org chart of a lead or opportunity.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"ghost_lead_oppty_contact_relation":{"type":"string","format":"uri","description":"Ghost-contact-on-lead/opportunity placement this role assignment belongs to.\n\nRelated GhostLeadOpptyContactRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'GhostLeadOpptyContactRelation' for its fields."},"sales_role":{"type":"string","format":"uri","description":"Sales role assigned to the ghost contact.\n\nRelated SalesRole record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesRole' for its fields."},"ghost_lead_oppty_contact_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost-contact-lead/opportunity placement."},"sales_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales role assigned to the ghost contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","ghost_lead_oppty_contact_relation","sales_role","ghost_lead_oppty_contact_relation_id","sales_role_id"]},"createGhostLeadOpptyContactSalesRoleRelationInput":{"description":"Field values of a new GhostLeadOpptyContactSalesRoleRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"ghost_lead_oppty_contact_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostLeadOpptyContactRelation record."}},"description":"Ghost-contact-on-lead/opportunity placement this role assignment belongs to.\n\nRelated GhostLeadOpptyContactRelation record; see 'createGhostLeadOpptyContactRelationInput' for its fields."},"ghost_lead_oppty_contact_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost-contact-lead/opportunity placement."},"sales_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales role assigned to the ghost contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["ghost_lead_oppty_contact_relation","ghost_lead_oppty_contact_relation_id","sales_role_id"]},"updateGhostLeadOpptyContactSalesRoleRelationInput":{"description":"Field values to change on a GhostLeadOpptyContactSalesRoleRelation record; fields left out keep their values.","properties":{"ghost_lead_oppty_contact_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostLeadOpptyContactRelation record."}},"description":"Ghost-contact-on-lead/opportunity placement this role assignment belongs to.\n\nRelated GhostLeadOpptyContactRelation record; see 'updateGhostLeadOpptyContactRelationInput' for its fields."},"ghost_lead_oppty_contact_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost-contact-lead/opportunity placement."},"sales_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales role assigned to the ghost contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchGhostLeadOpptyContactSalesRoleRelationInput":{"description":"Field values of a GhostLeadOpptyContactSalesRoleRelation record to create, or to update when its id is set.","properties":{"ghost_lead_oppty_contact_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related GhostLeadOpptyContactRelation record."}},"description":"Ghost-contact-on-lead/opportunity placement this role assignment belongs to.\n\nRelated GhostLeadOpptyContactRelation record; see 'updateGhostLeadOpptyContactRelationInput' for its fields."},"ghost_lead_oppty_contact_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the ghost-contact-lead/opportunity placement."},"sales_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales role assigned to the ghost contact."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ImportMappingMask":{"description":"Saved mapping of import file columns to fields, reused when importing records of the same entity.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User who owns the import mapping mask.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"entity_api_name":{"type":"string","example":"string","description":"API name of the entity this mask is configured for (e.g. \"Account\", \"Contact\", a custom entity's API name)."},"entity_type":{"type":"integer","description":"Entity the mask imports records into, such as leads, accounts, users or product prices. For custom entities, entity_api_name identifies the custom entity.\n\nInteger enum value: 1 - Lead, 2 - Opportunity, 3 - Account, 4 - Contact, 5 - Client, 6 - Product, 7 - ProductPriceListPrice, 8 - CustomEntity","example":1,"enum":[1,2,3,4,5,6,7,8],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","3":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","4":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","5":"Users of the space.","6":"Product or service in the catalog that can be added as a line item to opportunities and quotes.","7":"Product prices in price lists.","8":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities."}},"mapping":{"type":"object","description":"How the import file fills each field, as a JSON array of objects conforming to the `ImportMappingMaskItem` type: field_id, mapping_type (ColumnIndex, UseDefaultValues or CalculateValue) and, for ColumnIndex, column_index. Validated on write."},"name":{"type":"string","example":"string","description":"Display name of the mask."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"relation_types":{"type":"object","description":"Record type selected for each mapped relation field, as a JSON array of objects conforming to the `ImportMappingRelationType` type, each with field_id and entity_type_id. Validated on write."},"share_mode":{"type":"integer","description":"Who besides the owner can use the import mapping mask: nobody (Private, the default), the users and sales units in sharing_clients and sharing_units, or all users.\n\nInteger enum value: 1 - Private, 2 - Public, 0 - SelectedUnitsAndUsers","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The users and sales units the item is shared with.","1":"Only the owner.","2":"All users."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"description":"Users granted shared access to this import mapping mask (custom share mode)."},"sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"description":"Sales units granted shared access to this import mapping mask (custom share mode)."}},"required":["is_delete_protected","id","owner","entity_type","mapping","name","owner_id"]},"createImportMappingMaskInput":{"description":"Field values of a new ImportMappingMask record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"entity_api_name":{"type":"string","example":"string","description":"API name of the entity this mask is configured for (e.g. \"Account\", \"Contact\", a custom entity's API name)."},"entity_type":{"type":"integer","description":"Entity the mask imports records into, such as leads, accounts, users or product prices. For custom entities, entity_api_name identifies the custom entity.\n\nInteger enum value: 1 - Lead, 2 - Opportunity, 3 - Account, 4 - Contact, 5 - Client, 6 - Product, 7 - ProductPriceListPrice, 8 - CustomEntity","example":1,"enum":[1,2,3,4,5,6,7,8],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","3":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","4":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","5":"Users of the space.","6":"Product or service in the catalog that can be added as a line item to opportunities and quotes.","7":"Product prices in price lists.","8":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities."}},"mapping":{"type":"object","description":"How the import file fills each field, as a JSON array of objects conforming to the `ImportMappingMaskItem` type: field_id, mapping_type (ColumnIndex, UseDefaultValues or CalculateValue) and, for ColumnIndex, column_index. Validated on write."},"name":{"type":"string","example":"string","description":"Display name of the mask."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"relation_types":{"type":"object","description":"Record type selected for each mapped relation field, as a JSON array of objects conforming to the `ImportMappingRelationType` type, each with field_id and entity_type_id. Validated on write."},"share_mode":{"type":"integer","description":"Who besides the owner can use the import mapping mask: nobody (Private, the default), the users and sales units in sharing_clients and sharing_units, or all users.\n\nInteger enum value: 1 - Private, 2 - Public, 0 - SelectedUnitsAndUsers","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The users and sales units the item is shared with.","1":"Only the owner.","2":"All users."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Client record."}},"description":"Related Client record; see 'createClientInput' for its fields."},"description":"Users granted shared access to this import mapping mask (custom share mode)."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related SalesUnit record."}},"description":"Related SalesUnit record; see 'createSalesUnitInput' for its fields."},"description":"Sales units granted shared access to this import mapping mask (custom share mode)."}},"required":["entity_type","mapping","name","owner_id"]},"updateImportMappingMaskInput":{"description":"Field values to change on an ImportMappingMask record; fields left out keep their values.","properties":{"entity_api_name":{"type":"string","example":"string","description":"API name of the entity this mask is configured for (e.g. \"Account\", \"Contact\", a custom entity's API name)."},"entity_type":{"type":"integer","description":"Entity the mask imports records into, such as leads, accounts, users or product prices. For custom entities, entity_api_name identifies the custom entity.\n\nInteger enum value: 1 - Lead, 2 - Opportunity, 3 - Account, 4 - Contact, 5 - Client, 6 - Product, 7 - ProductPriceListPrice, 8 - CustomEntity","example":1,"enum":[1,2,3,4,5,6,7,8],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","3":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","4":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","5":"Users of the space.","6":"Product or service in the catalog that can be added as a line item to opportunities and quotes.","7":"Product prices in price lists.","8":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities."}},"mapping":{"type":"object","description":"How the import file fills each field, as a JSON array of objects conforming to the `ImportMappingMaskItem` type: field_id, mapping_type (ColumnIndex, UseDefaultValues or CalculateValue) and, for ColumnIndex, column_index. Validated on write."},"name":{"type":"string","example":"string","description":"Display name of the mask."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"relation_types":{"type":"object","description":"Record type selected for each mapped relation field, as a JSON array of objects conforming to the `ImportMappingRelationType` type, each with field_id and entity_type_id. Validated on write."},"share_mode":{"type":"integer","description":"Who besides the owner can use the import mapping mask: nobody (Private, the default), the users and sales units in sharing_clients and sharing_units, or all users.\n\nInteger enum value: 1 - Private, 2 - Public, 0 - SelectedUnitsAndUsers","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The users and sales units the item is shared with.","1":"Only the owner.","2":"All users."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Client record."}},"description":"Related Client record; see 'updateClientInput' for its fields."},"description":"Users granted shared access to this import mapping mask (custom share mode)."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related SalesUnit record."}},"description":"Related SalesUnit record; see 'updateSalesUnitInput' for its fields."},"description":"Sales units granted shared access to this import mapping mask (custom share mode)."}}},"batchImportMappingMaskInput":{"description":"Field values of an ImportMappingMask record to create, or to update when its id is set.","properties":{"entity_api_name":{"type":"string","example":"string","description":"API name of the entity this mask is configured for (e.g. \"Account\", \"Contact\", a custom entity's API name)."},"entity_type":{"type":"integer","description":"Entity the mask imports records into, such as leads, accounts, users or product prices. For custom entities, entity_api_name identifies the custom entity.\n\nInteger enum value: 1 - Lead, 2 - Opportunity, 3 - Account, 4 - Contact, 5 - Client, 6 - Product, 7 - ProductPriceListPrice, 8 - CustomEntity","example":1,"enum":[1,2,3,4,5,6,7,8],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","3":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","4":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","5":"Users of the space.","6":"Product or service in the catalog that can be added as a line item to opportunities and quotes.","7":"Product prices in price lists.","8":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities."}},"mapping":{"type":"object","description":"How the import file fills each field, as a JSON array of objects conforming to the `ImportMappingMaskItem` type: field_id, mapping_type (ColumnIndex, UseDefaultValues or CalculateValue) and, for ColumnIndex, column_index. Validated on write."},"name":{"type":"string","example":"string","description":"Display name of the mask."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"relation_types":{"type":"object","description":"Record type selected for each mapped relation field, as a JSON array of objects conforming to the `ImportMappingRelationType` type, each with field_id and entity_type_id. Validated on write."},"share_mode":{"type":"integer","description":"Who besides the owner can use the import mapping mask: nobody (Private, the default), the users and sales units in sharing_clients and sharing_units, or all users.\n\nInteger enum value: 1 - Private, 2 - Public, 0 - SelectedUnitsAndUsers","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The users and sales units the item is shared with.","1":"Only the owner.","2":"All users."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Client record."}},"description":"Related Client record; see 'updateClientInput' for its fields."},"description":"Users granted shared access to this import mapping mask (custom share mode)."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related SalesUnit record."}},"description":"Related SalesUnit record; see 'updateSalesUnitInput' for its fields."},"description":"Sales units granted shared access to this import mapping mask (custom share mode)."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"InterfacePreview":{"description":"Layout of how records of an entity type are previewed in the app: preview and card fields, detail tabs, widgets and charts.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_type":{"type":"string","format":"uri","description":"Account type the interface preview applies to.\n\nRelated AccountType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AccountType' for its fields."},"appointment_type":{"type":"string","format":"uri","description":"Appointment type the interface preview applies to.\n\nRelated AppointmentType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AppointmentType' for its fields."},"contact_type":{"type":"string","format":"uri","description":"Contact type the interface preview applies to.\n\nRelated ContactType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ContactType' for its fields."},"custom_entity_type":{"type":"string","format":"uri","description":"Custom entity type the interface preview applies to.\n\nRelated CustomEntityType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntityType' for its fields."},"lead_type":{"type":"string","format":"uri","description":"Lead type the interface preview applies to.\n\nRelated LeadType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadType' for its fields."},"oppty_type":{"type":"string","format":"uri","description":"Opportunity type the interface preview applies to.\n\nRelated OpportunityType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpportunityType' for its fields."},"product_type":{"type":"string","format":"uri","description":"Product type the interface preview applies to.\n\nRelated ProductType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProductType' for its fields."},"project_type":{"type":"string","format":"uri","description":"Project type the interface preview applies to.\n\nRelated ProjectType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProjectType' for its fields."},"quote_type":{"type":"string","format":"uri","description":"Quote type the interface preview applies to.\n\nRelated QuoteType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'QuoteType' for its fields."},"task_type":{"type":"string","format":"uri","description":"Task type the interface preview applies to.\n\nRelated TaskType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TaskType' for its fields."},"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type the interface preview applies to.","readOnly":true},"appointment_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type the interface preview applies to.","readOnly":true},"card_field_ids":{"type":"object","description":"Ordered ids of fields shown on the record's compact card view."},"charts":{"type":"object","description":"Chart configurations shown in the preview, each linked to a related entity (e.g. recent activities, related contacts, comments)."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type the interface preview applies to.","readOnly":true},"custom_entity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity type the interface preview applies to.","readOnly":true},"detail_tabs":{"type":"object","description":"Tab configurations shown on the record's detail screen (Detail tab plus related-entity and lookup tabs)."},"detail_widgets":{"type":"object","description":"Widget configurations shown on the record's detail screen sidebar (e.g. Status, KPIs)."},"field_ids":{"type":"object","description":"Ordered ids of fields shown in the record's preview pane."},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type the interface preview applies to.","readOnly":true},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type.","readOnly":true},"product_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product type the interface preview applies to.","readOnly":true},"project_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project type the interface preview applies to.","readOnly":true},"quote_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote type the interface preview applies to.","readOnly":true},"settings":{"type":"string","format":"binary","example":"blob","description":"Layout-customization settings for the preview (e.g. is_layout_customization_enabled). This payload conforms to the `InterfacePreviewCustomSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/InterfacePreviewCustomSettings.json","description":"InterfacePreviewCustomSettings JSON Schema"}},"task_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task type the interface preview applies to.","readOnly":true},"is_published":{"type":"boolean","example":false,"description":"True when the interface preview is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"entity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the type the interface preview is configured for, derived from whichever of the per-entity-type relations is set.","readOnly":true},"entity_type":{"type":"integer","description":"Entity kind the interface preview applies to (Account, Lead, Opportunity, Contact, Task, Appointment, Project, Quote, CustomEntity, or Product). Derived from whichever of the per-entity-type relations is set.\n\nInteger enum value: 1 - Lead, 2 - Account, 3 - Contact, 4 - Opportunity, 5 - Task, 6 - Appointment, 7 - OpptyProductRelation, 8 - Project, 9 - Quote, 10 - OnlineForm, 11 - CustomEntity, 12 - Product","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","3":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","5":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","6":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","7":"Product line of an opportunity.","8":"Project delivered for an account or run internally, with its objectives, activities and progress.","9":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","10":"Submission (response) of an online form, with the answers and the records it created or updated.","11":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","12":"Product or service in the catalog that can be added as a line item to opportunities and quotes."}}},"required":["is_delete_protected","has_draft","id","card_field_ids","charts","detail_tabs","detail_widgets","field_ids","settings","entity_type_id","entity_type"]},"createInterfacePreviewInput":{"description":"Field values of a new InterfacePreview record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type the interface preview applies to.","readOnly":true},"appointment_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type the interface preview applies to.","readOnly":true},"card_field_ids":{"type":"object","description":"Ordered ids of fields shown on the record's compact card view."},"charts":{"type":"object","description":"Chart configurations shown in the preview, each linked to a related entity (e.g. recent activities, related contacts, comments)."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type the interface preview applies to.","readOnly":true},"custom_entity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity type the interface preview applies to.","readOnly":true},"detail_tabs":{"type":"object","description":"Tab configurations shown on the record's detail screen (Detail tab plus related-entity and lookup tabs)."},"detail_widgets":{"type":"object","description":"Widget configurations shown on the record's detail screen sidebar (e.g. Status, KPIs)."},"field_ids":{"type":"object","description":"Ordered ids of fields shown in the record's preview pane."},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type the interface preview applies to.","readOnly":true},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type.","readOnly":true},"product_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product type the interface preview applies to.","readOnly":true},"project_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project type the interface preview applies to.","readOnly":true},"quote_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote type the interface preview applies to.","readOnly":true},"settings":{"type":"string","format":"binary","example":"blob","description":"Layout-customization settings for the preview (e.g. is_layout_customization_enabled). This payload conforms to the `InterfacePreviewCustomSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/InterfacePreviewCustomSettings.json","description":"InterfacePreviewCustomSettings JSON Schema"}},"task_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task type the interface preview applies to.","readOnly":true},"is_published":{"type":"boolean","example":false,"description":"True when the interface preview is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"entity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the type the interface preview is configured for, derived from whichever of the per-entity-type relations is set.","readOnly":true}},"required":["card_field_ids","charts","detail_tabs","detail_widgets","field_ids","settings","entity_type_id"]},"updateInterfacePreviewInput":{"description":"Field values to change on an InterfacePreview record; fields left out keep their values.","properties":{"card_field_ids":{"type":"object","description":"Ordered ids of fields shown on the record's compact card view."},"charts":{"type":"object","description":"Chart configurations shown in the preview, each linked to a related entity (e.g. recent activities, related contacts, comments)."},"detail_tabs":{"type":"object","description":"Tab configurations shown on the record's detail screen (Detail tab plus related-entity and lookup tabs)."},"detail_widgets":{"type":"object","description":"Widget configurations shown on the record's detail screen sidebar (e.g. Status, KPIs)."},"field_ids":{"type":"object","description":"Ordered ids of fields shown in the record's preview pane."},"settings":{"type":"string","format":"binary","example":"blob","description":"Layout-customization settings for the preview (e.g. is_layout_customization_enabled). This payload conforms to the `InterfacePreviewCustomSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/InterfacePreviewCustomSettings.json","description":"InterfacePreviewCustomSettings JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchInterfacePreviewInput":{"description":"Field values of an InterfacePreview record to create, or to update when its id is set.","properties":{"card_field_ids":{"type":"object","description":"Ordered ids of fields shown on the record's compact card view."},"charts":{"type":"object","description":"Chart configurations shown in the preview, each linked to a related entity (e.g. recent activities, related contacts, comments)."},"detail_tabs":{"type":"object","description":"Tab configurations shown on the record's detail screen (Detail tab plus related-entity and lookup tabs)."},"detail_widgets":{"type":"object","description":"Widget configurations shown on the record's detail screen sidebar (e.g. Status, KPIs)."},"field_ids":{"type":"object","description":"Ordered ids of fields shown in the record's preview pane."},"settings":{"type":"string","format":"binary","example":"blob","description":"Layout-customization settings for the preview (e.g. is_layout_customization_enabled). This payload conforms to the `InterfacePreviewCustomSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/InterfacePreviewCustomSettings.json","description":"InterfacePreviewCustomSettings JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Lead":{"description":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"currency_exchange_rates_list":{"type":"string","format":"uri","description":"Currency exchange rate list used to convert monetary fields linked to this lead. Empty to inherit the team space default.\n\nRelated CurrencyExchangeRatesList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRatesList' for its fields."},"lead_source":{"type":"string","format":"uri","description":"How the lead originated (e.g. Website, Referral, Trade Show). Configurable per team space.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"lead_type":{"type":"string","format":"uri","description":"Lead type that classifies this lead. Lead types are configurable per team space and drive which form, fields and lead process apply.\n\nRelated LeadType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadType' for its fields."},"owner":{"type":"string","format":"uri","description":"Sales user who owns this lead. May be empty when the lead is unassigned and available for take-over.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"reason_of_close":{"type":"string","format":"uri","description":"Configurable reason recorded when the lead is archived (lost). Required when the lost form mandates it.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"step":{"type":"string","format":"uri","description":"Step in the lead process the lead is currently in.\n\nRelated Step record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Step' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit this lead is assigned to. Determines which team members can see the record under unit-based sharing.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this lead."},"description":{"type":"string","example":"string","description":"Free-form description of the lead."},"is_archived":{"type":"boolean","example":false,"description":"True when the lead has been archived (lost). Archived leads remain readable but are hidden from active lists and cannot be edited until reactivated."},"label_flag":{"type":"string","example":1,"enum":[1,2,4],"description":"User-set colored flag used to highlight the lead in lists and reports.","x-enumDescriptions":{"1":"Marked as a priority.","2":"Marked as hot.","4":"Marked as stalled."}},"last_ai_buying_center_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested buying center was last applied to this lead."},"lead_source_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead source recording how the lead originated (e.g. Website, Referral, Trade Show)."},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type that classifies the lead and drives which form, fields and lead process apply."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead owner; a create needs `owner_id` or `unit_id`."},"quick_account_email":{"type":"string","example":"string","description":"Free-text company email captured at lead creation when no Account record has been linked yet."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name captured at lead creation when no Account record has been linked yet."},"quick_account_phone":{"type":"string","example":"string","description":"Free-text company phone captured at lead creation when no Account record has been linked yet."},"quick_contact_name":{"type":"string","example":"string","description":"Free-text contact name captured at lead creation when no Contact record has been linked yet."},"quick_email":{"type":"string","example":"string","description":"Free-text contact email captured at lead creation when no Contact record has been linked yet."},"quick_phone":{"type":"string","example":"string","description":"Free-text contact phone captured at lead creation when no Contact record has been linked yet."},"ranking":{"type":"integer","format":"int32","example":1,"description":"Qualitative ranking score (1-10) the user assigns to indicate the strength of the lead."},"reason_of_close_description":{"type":"string","example":"string","description":"Free-form note explaining why the lead was archived (lost). Captured alongside reason_of_close."},"reason_of_close_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reason recorded when the lead is archived (lost), or empty when none was given."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead process step."},"table_name":{"type":"string","example":"string","description":"Discriminator identifying the concrete record type — always \"lead\" for Lead records. Read-only; useful when consuming polymorphic LeadOppty results.","readOnly":true},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit; a create needs `owner_id` or `unit_id`."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"primary_contact":{"type":"string","format":"uri","description":"Primary contact of this lead. Set automatically from the contact relation marked as primary.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"primary_account":{"type":"string","format":"uri","description":"Primary account of this lead. Set automatically from the account relation marked as primary.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"contact_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related LeadOpptyContactRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadOpptyContactRelation' for its fields."},"description":"Contacts linked to this lead, including their roles and org-chart positions."},"account_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related LeadOpptyAccountRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadOpptyAccountRelation' for its fields."},"description":"Accounts linked to this lead, including the primary-account flag."},"status":{"type":"integer","description":"Current status of the lead (Open, Lost, Qualified). Read-only; derived from the archived flag and lifecycle events.\n\nInteger enum value: 1 - Open, 2 - Lost","example":1,"enum":[1,2],"readOnly":true,"x-enumDescriptions":{"1":"The lead is active.","2":"The lead was archived as lost."}},"sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related LeadOpptySharingSalesUnitRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadOpptySharingSalesUnitRelation' for its fields."},"description":"Sales units that have been granted shared access to this lead. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related LeadOpptySharingClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadOpptySharingClientRelation' for its fields."},"description":"Users that have been granted shared access to this lead. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Documents linked to this lead."},"tags":{"type":"array","items":{"type":"string","format":"uri","description":"Related TagRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TagRelation' for its fields."},"description":"Tag labels applied to this lead."},"static_profiles":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProfileRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProfileRelation' for its fields."},"description":"Saved view profiles this lead currently matches."},"qualify_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of when the lead was qualified, taken from the matching KPI event. Empty for leads that have not been qualified. Read-only."},"days_in_step":{"type":"integer","format":"int32","example":1,"description":"Number of days the lead has been sitting in its current pipeline step. Read-only; computed by Coevera from the most recent move event."},"is_favorite":{"type":"boolean","example":false,"description":"True when the current authenticated user has marked this lead as favorite. Per-user."},"lost_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of when the lead was archived (lost). Setting it adjusts the underlying loss event; empty for leads that have not been archived."},"formatted_name":{"type":"string","example":"string","description":"Display version of the lead name, used in lists and references."},"scoring":{"type":"object","description":"Lead scoring summary, combining the percentile and current scoring state. Read-only; computed by Coevera."},"modified_by_user":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent modification made by an end user (excluding system changes). Read-only; computed by Coevera."}},"required":["is_delete_protected","id","lead_type","step","unit","name","table_name","status","days_in_step","is_favorite","formatted_name"]},"createLeadInput":{"description":"Field values of a new Lead record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this lead."},"description":{"type":"string","example":"string","description":"Free-form description of the lead."},"is_archived":{"type":"boolean","example":false,"description":"True when the lead has been archived (lost). Archived leads remain readable but are hidden from active lists and cannot be edited until reactivated."},"label_flag":{"type":"string","example":1,"enum":[1,2,4],"description":"User-set colored flag used to highlight the lead in lists and reports.","x-enumDescriptions":{"1":"Marked as a priority.","2":"Marked as hot.","4":"Marked as stalled."}},"last_ai_buying_center_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested buying center was last applied to this lead."},"lead_source_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead source recording how the lead originated (e.g. Website, Referral, Trade Show)."},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type that classifies the lead and drives which form, fields and lead process apply."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead owner; a create needs `owner_id` or `unit_id`, and with `owner_id` the lead takes the owner's sales unit. Without either the API answers HTTP 422."},"quick_account_email":{"type":"string","example":"string","description":"Free-text company email captured at lead creation when no Account record has been linked yet."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name captured at lead creation when no Account record has been linked yet."},"quick_account_phone":{"type":"string","example":"string","description":"Free-text company phone captured at lead creation when no Account record has been linked yet."},"quick_contact_name":{"type":"string","example":"string","description":"Free-text contact name captured at lead creation when no Contact record has been linked yet."},"quick_email":{"type":"string","example":"string","description":"Free-text contact email captured at lead creation when no Contact record has been linked yet."},"quick_phone":{"type":"string","example":"string","description":"Free-text contact phone captured at lead creation when no Contact record has been linked yet."},"ranking":{"type":"integer","format":"int32","example":1,"description":"Qualitative ranking score (1-10) the user assigns to indicate the strength of the lead."},"reason_of_close_description":{"type":"string","example":"string","description":"Free-form note explaining why the lead was archived (lost). Captured alongside reason_of_close."},"reason_of_close_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reason recorded when the lead is archived (lost), or empty when none was given."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead process step."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit; a create needs `owner_id` or `unit_id`, and with `unit_id` alone the lead waits unassigned in that unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactRelation record."}},"description":"Related LeadOpptyContactRelation record; see 'createLeadOpptyContactRelationInput' for its fields."},"description":"Contacts linked to this lead, including their roles and org-chart positions."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyAccountRelation record."}},"description":"Related LeadOpptyAccountRelation record; see 'createLeadOpptyAccountRelationInput' for its fields."},"description":"Accounts linked to this lead, including the primary-account flag."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptySharingSalesUnitRelation record."}},"description":"Related LeadOpptySharingSalesUnitRelation record; see 'createLeadOpptySharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this lead. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptySharingClientRelation record."}},"description":"Related LeadOpptySharingClientRelation record; see 'createLeadOpptySharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this lead. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Documents linked to this lead."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'createTagRelationInput' for its fields."},"description":"Tag labels applied to this lead."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'createProfileRelationInput' for its fields."},"description":"Saved view profiles this lead currently matches."},"lost_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of when the lead was archived (lost). Setting it adjusts the underlying loss event; empty for leads that have not been archived."}},"required":["name"]},"updateLeadInput":{"description":"Field values to change on a Lead record; fields left out keep their values.","properties":{"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this lead."},"description":{"type":"string","example":"string","description":"Free-form description of the lead."},"is_archived":{"type":"boolean","example":false,"description":"True when the lead has been archived (lost). Archived leads remain readable but are hidden from active lists and cannot be edited until reactivated."},"label_flag":{"type":"string","example":1,"enum":[1,2,4],"description":"User-set colored flag used to highlight the lead in lists and reports.","x-enumDescriptions":{"1":"Marked as a priority.","2":"Marked as hot.","4":"Marked as stalled."}},"last_ai_buying_center_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested buying center was last applied to this lead."},"lead_source_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead source recording how the lead originated (e.g. Website, Referral, Trade Show)."},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type that classifies the lead and drives which form, fields and lead process apply."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead owner."},"quick_account_email":{"type":"string","example":"string","description":"Free-text company email captured at lead creation when no Account record has been linked yet."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name captured at lead creation when no Account record has been linked yet."},"quick_account_phone":{"type":"string","example":"string","description":"Free-text company phone captured at lead creation when no Account record has been linked yet."},"quick_contact_name":{"type":"string","example":"string","description":"Free-text contact name captured at lead creation when no Contact record has been linked yet."},"quick_email":{"type":"string","example":"string","description":"Free-text contact email captured at lead creation when no Contact record has been linked yet."},"quick_phone":{"type":"string","example":"string","description":"Free-text contact phone captured at lead creation when no Contact record has been linked yet."},"ranking":{"type":"integer","format":"int32","example":1,"description":"Qualitative ranking score (1-10) the user assigns to indicate the strength of the lead."},"reason_of_close_description":{"type":"string","example":"string","description":"Free-form note explaining why the lead was archived (lost). Captured alongside reason_of_close."},"reason_of_close_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reason recorded when the lead is archived (lost), or empty when none was given."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead process step."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactRelation record."}},"description":"Related LeadOpptyContactRelation record; see 'updateLeadOpptyContactRelationInput' for its fields."},"description":"Contacts linked to this lead, including their roles and org-chart positions."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyAccountRelation record."}},"description":"Related LeadOpptyAccountRelation record; see 'updateLeadOpptyAccountRelationInput' for its fields."},"description":"Accounts linked to this lead, including the primary-account flag."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptySharingSalesUnitRelation record."}},"description":"Related LeadOpptySharingSalesUnitRelation record; see 'updateLeadOpptySharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this lead. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptySharingClientRelation record."}},"description":"Related LeadOpptySharingClientRelation record; see 'updateLeadOpptySharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this lead. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this lead."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this lead."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'updateProfileRelationInput' for its fields."},"description":"Saved view profiles this lead currently matches."},"lost_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of when the lead was archived (lost). Setting it adjusts the underlying loss event; empty for leads that have not been archived."}}},"batchLeadInput":{"description":"Field values of a Lead record to create, or to update when its id is set.","properties":{"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this lead."},"description":{"type":"string","example":"string","description":"Free-form description of the lead."},"is_archived":{"type":"boolean","example":false,"description":"True when the lead has been archived (lost). Archived leads remain readable but are hidden from active lists and cannot be edited until reactivated."},"label_flag":{"type":"string","example":1,"enum":[1,2,4],"description":"User-set colored flag used to highlight the lead in lists and reports.","x-enumDescriptions":{"1":"Marked as a priority.","2":"Marked as hot.","4":"Marked as stalled."}},"last_ai_buying_center_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested buying center was last applied to this lead."},"lead_source_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead source recording how the lead originated (e.g. Website, Referral, Trade Show)."},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type that classifies the lead and drives which form, fields and lead process apply."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead owner."},"quick_account_email":{"type":"string","example":"string","description":"Free-text company email captured at lead creation when no Account record has been linked yet."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name captured at lead creation when no Account record has been linked yet."},"quick_account_phone":{"type":"string","example":"string","description":"Free-text company phone captured at lead creation when no Account record has been linked yet."},"quick_contact_name":{"type":"string","example":"string","description":"Free-text contact name captured at lead creation when no Contact record has been linked yet."},"quick_email":{"type":"string","example":"string","description":"Free-text contact email captured at lead creation when no Contact record has been linked yet."},"quick_phone":{"type":"string","example":"string","description":"Free-text contact phone captured at lead creation when no Contact record has been linked yet."},"ranking":{"type":"integer","format":"int32","example":1,"description":"Qualitative ranking score (1-10) the user assigns to indicate the strength of the lead."},"reason_of_close_description":{"type":"string","example":"string","description":"Free-form note explaining why the lead was archived (lost). Captured alongside reason_of_close."},"reason_of_close_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reason recorded when the lead is archived (lost), or empty when none was given."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead process step."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactRelation record."}},"description":"Related LeadOpptyContactRelation record; see 'updateLeadOpptyContactRelationInput' for its fields."},"description":"Contacts linked to this lead, including their roles and org-chart positions."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyAccountRelation record."}},"description":"Related LeadOpptyAccountRelation record; see 'updateLeadOpptyAccountRelationInput' for its fields."},"description":"Accounts linked to this lead, including the primary-account flag."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptySharingSalesUnitRelation record."}},"description":"Related LeadOpptySharingSalesUnitRelation record; see 'updateLeadOpptySharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this lead. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptySharingClientRelation record."}},"description":"Related LeadOpptySharingClientRelation record; see 'updateLeadOpptySharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this lead. Editable only when share_mode allows user sharing."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this lead."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this lead."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'updateProfileRelationInput' for its fields."},"description":"Saved view profiles this lead currently matches."},"lost_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of when the lead was archived (lost). Setting it adjusts the underlying loss event; empty for leads that have not been archived."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"LeadOppty":{"description":"Lead or opportunity, with the fields both kinds of sales records share.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true}},"required":["is_delete_protected","id"]},"LeadOpptyAccountRelation":{"description":"Link between a lead or opportunity and an account, marking the primary account.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account linked to the lead or opportunity.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead the account is linked to. Set when lead_oppty_id resolves to a Lead; otherwise empty.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity the account is linked to. Set when lead_oppty_id resolves to an Opportunity; otherwise empty.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account linked to the lead or opportunity."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity this link belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","account","account_id","is_primary","lead_oppty_id"]},"createLeadOpptyAccountRelationInput":{"description":"Field values of a new LeadOpptyAccountRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account linked to the lead or opportunity."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity this link belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["account_id","is_primary","lead_oppty_id"]},"updateLeadOpptyAccountRelationInput":{"description":"Field values to change on a LeadOpptyAccountRelation record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account linked to the lead or opportunity."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity this link belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchLeadOpptyAccountRelationInput":{"description":"Field values of a LeadOpptyAccountRelation record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account linked to the lead or opportunity."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity this link belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"LeadOpptyContactGroupRelation":{"description":"Group of contacts on the org chart of a lead or opportunity.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"lead":{"type":"string","format":"uri","description":"Lead this contact group belongs to. Set when lead_oppty_id resolves to a Lead; otherwise empty.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity this contact group belongs to. Set when lead_oppty_id resolves to an Opportunity; otherwise empty.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the contact group on the org chart, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"group_position":{"type":"object","description":"Org-chart layout of the contact group, as a JSON object {\"x\": <int>, \"y\": <int>, \"width\": <int>, \"height\": <int>}."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the contact group belongs to."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","color","group_position","lead_oppty_id","name"]},"createLeadOpptyContactGroupRelationInput":{"description":"Field values of a new LeadOpptyContactGroupRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the contact group on the org chart, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"group_position":{"type":"object","description":"Org-chart layout of the contact group, as a JSON object {\"x\": <int>, \"y\": <int>, \"width\": <int>, \"height\": <int>}."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the contact group belongs to."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["color","group_position","lead_oppty_id","name"]},"updateLeadOpptyContactGroupRelationInput":{"description":"Field values to change on a LeadOpptyContactGroupRelation record; fields left out keep their values.","properties":{"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the contact group on the org chart, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"group_position":{"type":"object","description":"Org-chart layout of the contact group, as a JSON object {\"x\": <int>, \"y\": <int>, \"width\": <int>, \"height\": <int>}."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the contact group belongs to."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchLeadOpptyContactGroupRelationInput":{"description":"Field values of a LeadOpptyContactGroupRelation record to create, or to update when its id is set.","properties":{"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the contact group on the org chart, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"group_position":{"type":"object","description":"Org-chart layout of the contact group, as a JSON object {\"x\": <int>, \"y\": <int>, \"width\": <int>, \"height\": <int>}."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the contact group belongs to."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"LeadOpptyContactRelation":{"description":"Link between a lead or opportunity and a contact, with the contact's sales roles and org-chart position.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact":{"type":"string","format":"uri","description":"Contact linked to the lead or opportunity.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"lead_oppty_contact_group_relation":{"type":"string","format":"uri","description":"Contact group on the org chart this contact belongs to, or empty for ungrouped contacts.\n\nRelated LeadOpptyContactGroupRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadOpptyContactGroupRelation' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead the contact is linked to. Set when lead_oppty_id resolves to a Lead; otherwise empty.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity the contact is linked to. Set when lead_oppty_id resolves to an Opportunity; otherwise empty.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"comment":{"type":"string","example":"string","description":"Free-form note describing this contact link."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to the lead or opportunity."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"lead_oppty_contact_group_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the org-chart contact group this contact belongs to, or empty for ungrouped contacts. The group must belong to the same lead or opportunity."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity this link belongs to."},"position_in_group":{"type":"object","description":"Org-chart layout position of the contact within its group, as a JSON object {\"x\": <int>, \"y\": <int>}."},"relationship":{"type":"integer","description":"Org-chart relationship of the contact within the lead/opportunity hierarchy.\n\nInteger enum value: 0 - NoRelationship, 1 - Weak, 2 - Moderate, 3 - Strong","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"No relationship is recorded.","1":"The relationship is weak.","2":"The relationship is of moderate strength.","3":"The relationship is strong."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sales_roles":{"type":"array","items":{"type":"string","format":"uri","description":"Related LeadOpptyContactSalesRoleRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadOpptyContactSalesRoleRelation' for its fields."},"description":"Sales roles assigned to the contact for this lead or opportunity."}},"required":["is_delete_protected","id","contact","contact_id","is_primary","lead_oppty_id"]},"createLeadOpptyContactRelationInput":{"description":"Field values of a new LeadOpptyContactRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"lead_oppty_contact_group_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactGroupRelation record."}},"description":"Contact group on the org chart this contact belongs to, or empty for ungrouped contacts.\n\nRelated LeadOpptyContactGroupRelation record; see 'createLeadOpptyContactGroupRelationInput' for its fields."},"comment":{"type":"string","example":"string","description":"Free-form note describing this contact link."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to the lead or opportunity."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"lead_oppty_contact_group_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the org-chart contact group this contact belongs to, or empty for ungrouped contacts. The group must belong to the same lead or opportunity."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity this link belongs to."},"position_in_group":{"type":"object","description":"Org-chart layout position of the contact within its group, as a JSON object {\"x\": <int>, \"y\": <int>}."},"relationship":{"type":"integer","description":"Org-chart relationship of the contact within the lead/opportunity hierarchy.\n\nInteger enum value: 0 - NoRelationship, 1 - Weak, 2 - Moderate, 3 - Strong","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"No relationship is recorded.","1":"The relationship is weak.","2":"The relationship is of moderate strength.","3":"The relationship is strong."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sales_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactSalesRoleRelation record."}},"description":"Related LeadOpptyContactSalesRoleRelation record; see 'createLeadOpptyContactSalesRoleRelationInput' for its fields."},"description":"Sales roles assigned to the contact for this lead or opportunity."}},"required":["contact_id","is_primary","lead_oppty_id"]},"updateLeadOpptyContactRelationInput":{"description":"Field values to change on a LeadOpptyContactRelation record; fields left out keep their values.","properties":{"lead_oppty_contact_group_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactGroupRelation record."}},"description":"Contact group on the org chart this contact belongs to, or empty for ungrouped contacts.\n\nRelated LeadOpptyContactGroupRelation record; see 'updateLeadOpptyContactGroupRelationInput' for its fields."},"comment":{"type":"string","example":"string","description":"Free-form note describing this contact link."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to the lead or opportunity."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"lead_oppty_contact_group_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the org-chart contact group this contact belongs to, or empty for ungrouped contacts. The group must belong to the same lead or opportunity."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity this link belongs to."},"position_in_group":{"type":"object","description":"Org-chart layout position of the contact within its group, as a JSON object {\"x\": <int>, \"y\": <int>}."},"relationship":{"type":"integer","description":"Org-chart relationship of the contact within the lead/opportunity hierarchy.\n\nInteger enum value: 0 - NoRelationship, 1 - Weak, 2 - Moderate, 3 - Strong","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"No relationship is recorded.","1":"The relationship is weak.","2":"The relationship is of moderate strength.","3":"The relationship is strong."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sales_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactSalesRoleRelation record."}},"description":"Related LeadOpptyContactSalesRoleRelation record; see 'updateLeadOpptyContactSalesRoleRelationInput' for its fields."},"description":"Sales roles assigned to the contact for this lead or opportunity."}}},"batchLeadOpptyContactRelationInput":{"description":"Field values of a LeadOpptyContactRelation record to create, or to update when its id is set.","properties":{"lead_oppty_contact_group_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactGroupRelation record."}},"description":"Contact group on the org chart this contact belongs to, or empty for ungrouped contacts.\n\nRelated LeadOpptyContactGroupRelation record; see 'updateLeadOpptyContactGroupRelationInput' for its fields."},"comment":{"type":"string","example":"string","description":"Free-form note describing this contact link."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to the lead or opportunity."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"lead_oppty_contact_group_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the org-chart contact group this contact belongs to, or empty for ungrouped contacts. The group must belong to the same lead or opportunity."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity this link belongs to."},"position_in_group":{"type":"object","description":"Org-chart layout position of the contact within its group, as a JSON object {\"x\": <int>, \"y\": <int>}."},"relationship":{"type":"integer","description":"Org-chart relationship of the contact within the lead/opportunity hierarchy.\n\nInteger enum value: 0 - NoRelationship, 1 - Weak, 2 - Moderate, 3 - Strong","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"No relationship is recorded.","1":"The relationship is weak.","2":"The relationship is of moderate strength.","3":"The relationship is strong."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sales_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactSalesRoleRelation record."}},"description":"Related LeadOpptyContactSalesRoleRelation record; see 'updateLeadOpptyContactSalesRoleRelationInput' for its fields."},"description":"Sales roles assigned to the contact for this lead or opportunity."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"LeadOpptyContactSalesRoleRelation":{"description":"Sales role assigned to a contact on a lead or opportunity.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"lead_oppty_contact_relation":{"type":"string","format":"uri","description":"Lead/opportunity-contact link this sales-role assignment belongs to.\n\nRelated LeadOpptyContactRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadOpptyContactRelation' for its fields."},"sales_role":{"type":"string","format":"uri","description":"Sales role assigned to the contact on this lead or opportunity.\n\nRelated SalesRole record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesRole' for its fields."},"lead_oppty_contact_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead/opportunity-contact link."},"sales_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales role assigned to the contact on this lead or opportunity."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","sales_role","sales_role_id"]},"createLeadOpptyContactSalesRoleRelationInput":{"description":"Field values of a new LeadOpptyContactSalesRoleRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"lead_oppty_contact_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactRelation record."}},"description":"Lead/opportunity-contact link this sales-role assignment belongs to.\n\nRelated LeadOpptyContactRelation record; see 'createLeadOpptyContactRelationInput' for its fields."},"lead_oppty_contact_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead/opportunity-contact link."},"sales_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales role assigned to the contact on this lead or opportunity."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["sales_role_id"]},"updateLeadOpptyContactSalesRoleRelationInput":{"description":"Field values to change on a LeadOpptyContactSalesRoleRelation record; fields left out keep their values.","properties":{"lead_oppty_contact_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactRelation record."}},"description":"Lead/opportunity-contact link this sales-role assignment belongs to.\n\nRelated LeadOpptyContactRelation record; see 'updateLeadOpptyContactRelationInput' for its fields."},"lead_oppty_contact_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead/opportunity-contact link."},"sales_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales role assigned to the contact on this lead or opportunity."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchLeadOpptyContactSalesRoleRelationInput":{"description":"Field values of a LeadOpptyContactSalesRoleRelation record to create, or to update when its id is set.","properties":{"lead_oppty_contact_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactRelation record."}},"description":"Lead/opportunity-contact link this sales-role assignment belongs to.\n\nRelated LeadOpptyContactRelation record; see 'updateLeadOpptyContactRelationInput' for its fields."},"lead_oppty_contact_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead/opportunity-contact link."},"sales_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales role assigned to the contact on this lead or opportunity."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"LeadOpptyDataExRelation":{"description":"Option selected in a multi-select checkbox field of a lead or opportunity.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"data":{"type":"string","format":"uri","description":"Option selected in the multi-select field; it belongs to the data set given by data_set_id.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead on which the option is selected; empty when lead_oppty_id is an opportunity.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity on which the option is selected; empty when lead_oppty_id is a lead.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity on which the option is selected."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","data","data_id","data_set_id","lead_oppty_id"]},"LeadOpptyKPI":{"description":"KPI event of a lead or opportunity (e.g. created, qualified, won, lost or moved to another step), used in activity reporting.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User who triggered the KPI event (e.g. created the lead, qualified it, won or lost the opportunity, moved the record).\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead this KPI event relates to. Set when lead_oppty_id resolves to a Lead; otherwise empty.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity this KPI event relates to. Set when lead_oppty_id resolves to an Opportunity; otherwise empty.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"owner":{"type":"string","format":"uri","description":"Lead/opportunity owner at the time the KPI event occurred.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the triggering user belonged to at the time of the event.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: CreateLeads, CreateOppty, QualifyLead, WinOppty, LoseLead, LoseOppty, LastMove or LastModified.\n\nInteger enum value: 1 - CreateLeads, 2 - CreateOppty, 4 - QualifyLead, 5 - WinOppty, 6 - LoseLead, 7 - LoseOppty, 8 - LastMove, 9 - LastModified","example":1,"enum":[1,2,4,5,6,7,8,9],"x-enumDescriptions":{"1":"The lead was created.","2":"The opportunity was created directly, not qualified from a lead.","4":"The lead was qualified into an opportunity.","5":"The opportunity was won.","6":"The lead was lost.","7":"The opportunity was lost.","8":"The record entered its current pipeline step (set on create and on every step change).","9":"The record was last modified."}},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the KPI event relates to."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead/opportunity owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","unit","kpi","lead_oppty_id","unit_id"]},"createLeadOpptyKPIInput":{"description":"Field values of a new LeadOpptyKPI record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: CreateLeads, CreateOppty, QualifyLead, WinOppty, LoseLead, LoseOppty, LastMove or LastModified.\n\nInteger enum value: 1 - CreateLeads, 2 - CreateOppty, 4 - QualifyLead, 5 - WinOppty, 6 - LoseLead, 7 - LoseOppty, 8 - LastMove, 9 - LastModified","example":1,"enum":[1,2,4,5,6,7,8,9],"x-enumDescriptions":{"1":"The lead was created.","2":"The opportunity was created directly, not qualified from a lead.","4":"The lead was qualified into an opportunity.","5":"The opportunity was won.","6":"The lead was lost.","7":"The opportunity was lost.","8":"The record entered its current pipeline step (set on create and on every step change).","9":"The record was last modified."}},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the KPI event relates to."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead/opportunity owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["kpi","lead_oppty_id","unit_id"]},"updateLeadOpptyKPIInput":{"description":"Field values to change on a LeadOpptyKPI record; fields left out keep their values.","properties":{"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: CreateLeads, CreateOppty, QualifyLead, WinOppty, LoseLead, LoseOppty, LastMove or LastModified.\n\nInteger enum value: 1 - CreateLeads, 2 - CreateOppty, 4 - QualifyLead, 5 - WinOppty, 6 - LoseLead, 7 - LoseOppty, 8 - LastMove, 9 - LastModified","example":1,"enum":[1,2,4,5,6,7,8,9],"x-enumDescriptions":{"1":"The lead was created.","2":"The opportunity was created directly, not qualified from a lead.","4":"The lead was qualified into an opportunity.","5":"The opportunity was won.","6":"The lead was lost.","7":"The opportunity was lost.","8":"The record entered its current pipeline step (set on create and on every step change).","9":"The record was last modified."}},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the KPI event relates to."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead/opportunity owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchLeadOpptyKPIInput":{"description":"Field values of a LeadOpptyKPI record to create, or to update when its id is set.","properties":{"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: CreateLeads, CreateOppty, QualifyLead, WinOppty, LoseLead, LoseOppty, LastMove or LastModified.\n\nInteger enum value: 1 - CreateLeads, 2 - CreateOppty, 4 - QualifyLead, 5 - WinOppty, 6 - LoseLead, 7 - LoseOppty, 8 - LastMove, 9 - LastModified","example":1,"enum":[1,2,4,5,6,7,8,9],"x-enumDescriptions":{"1":"The lead was created.","2":"The opportunity was created directly, not qualified from a lead.","4":"The lead was qualified into an opportunity.","5":"The opportunity was won.","6":"The lead was lost.","7":"The opportunity was lost.","8":"The record entered its current pipeline step (set on create and on every step change).","9":"The record was last modified."}},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the KPI event relates to."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead/opportunity owner at the time of the event."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"LeadOpptySharingClientRelation":{"description":"Share of a lead or opportunity with an individual user, with the access level granted.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User the lead or opportunity is shared with.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead being shared. Set when lead_oppty_id resolves to a Lead; otherwise empty.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity being shared. Set when lead_oppty_id resolves to an Opportunity; otherwise empty.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity being shared."},"role":{"type":"integer","description":"Access the sharing gives the user on the lead or opportunity: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","client","client_id","lead_oppty_id"]},"createLeadOpptySharingClientRelationInput":{"description":"Field values of a new LeadOpptySharingClientRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity being shared."},"role":{"type":"integer","description":"Access the sharing gives the user on the lead or opportunity: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["client_id","lead_oppty_id"]},"updateLeadOpptySharingClientRelationInput":{"description":"Field values to change on a LeadOpptySharingClientRelation record; fields left out keep their values.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity being shared."},"role":{"type":"integer","description":"Access the sharing gives the user on the lead or opportunity: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchLeadOpptySharingClientRelationInput":{"description":"Field values of a LeadOpptySharingClientRelation record to create, or to update when its id is set.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity being shared."},"role":{"type":"integer","description":"Access the sharing gives the user on the lead or opportunity: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"LeadOpptySharingSalesUnitRelation":{"description":"Share of a lead or opportunity with a sales unit, with the access level granted.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"lead":{"type":"string","format":"uri","description":"Lead being shared. Set when lead_oppty_id resolves to a Lead; otherwise empty.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity being shared. Set when lead_oppty_id resolves to an Opportunity; otherwise empty.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the lead or opportunity is shared with.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity being shared."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the lead or opportunity: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","unit","lead_oppty_id","unit_id"]},"createLeadOpptySharingSalesUnitRelationInput":{"description":"Field values of a new LeadOpptySharingSalesUnitRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity being shared."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the lead or opportunity: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["lead_oppty_id","unit_id"]},"updateLeadOpptySharingSalesUnitRelationInput":{"description":"Field values to change on a LeadOpptySharingSalesUnitRelation record; fields left out keep their values.","properties":{"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity being shared."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the lead or opportunity: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchLeadOpptySharingSalesUnitRelationInput":{"description":"Field values of a LeadOpptySharingSalesUnitRelation record to create, or to update when its id is set.","properties":{"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity being shared."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the lead or opportunity: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"LeadOpptyStepCheckListRelation":{"description":"Completion of a step checklist item on a lead, opportunity or quote, with the activity, email, note or document that fulfils it.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment":{"type":"string","format":"uri","description":"Appointment used as evidence for this checklist item. Set when activity_id resolves to an Appointment; otherwise empty.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"task":{"type":"string","format":"uri","description":"Task used as evidence for this checklist item. Set when activity_id resolves to a Task; otherwise empty.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"cloud_object":{"type":"string","format":"uri","description":"Document linked as evidence for this checklist item.\n\nRelated CloudObject record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObject' for its fields."},"email":{"type":"string","format":"uri","description":"Email linked as evidence for this checklist item.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead this checklist completion belongs to. Set when lead_oppty_id resolves to a Lead; otherwise empty.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity this checklist completion belongs to. Set when lead_oppty_id resolves to an Opportunity; otherwise empty.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"note":{"type":"string","format":"uri","description":"Note linked as evidence for this checklist item.\n\nRelated Note record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Note' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote this checklist completion belongs to, or empty when it belongs to a lead or opportunity.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"step_checklist":{"type":"string","format":"uri","description":"Step checklist item this completion record refers to.\n\nRelated StepChecklist record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'StepChecklist' for its fields."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task linked as evidence for this checklist item."},"cloud_object_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the document."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email linked as evidence for this checklist item."},"item_checked":{"type":"boolean","example":false,"description":"True when the checklist item has been completed for this lead, opportunity or quote."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity, or empty when this completion belongs to a quote."},"note_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the note linked as evidence for this checklist item."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote this checklist completion belongs to, or empty when it belongs to a lead or opportunity."},"step_checklist_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the step checklist item."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","step_checklist","step_checklist_id"]},"createLeadOpptyStepCheckListRelationInput":{"description":"Field values of a new LeadOpptyStepCheckListRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"cloud_object":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Document linked as evidence for this checklist item.\n\nRelated CloudObject record; see 'createCloudObjectInput' for its fields."},"note":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Note record."}},"description":"Note linked as evidence for this checklist item.\n\nRelated Note record; see 'createNoteInput' for its fields."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task linked as evidence for this checklist item."},"cloud_object_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the document."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email linked as evidence for this checklist item."},"item_checked":{"type":"boolean","example":false,"description":"True when the checklist item has been completed for this lead, opportunity or quote."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity, or empty when this completion belongs to a quote."},"note_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the note linked as evidence for this checklist item."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote this checklist completion belongs to, or empty when it belongs to a lead or opportunity."},"step_checklist_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the step checklist item."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["step_checklist_id"]},"updateLeadOpptyStepCheckListRelationInput":{"description":"Field values to change on a LeadOpptyStepCheckListRelation record; fields left out keep their values.","properties":{"cloud_object":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Document linked as evidence for this checklist item.\n\nRelated CloudObject record; see 'updateCloudObjectInput' for its fields."},"note":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Note record."}},"description":"Note linked as evidence for this checklist item.\n\nRelated Note record; see 'updateNoteInput' for its fields."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task linked as evidence for this checklist item."},"cloud_object_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the document."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email linked as evidence for this checklist item."},"item_checked":{"type":"boolean","example":false,"description":"True when the checklist item has been completed for this lead, opportunity or quote."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity, or empty when this completion belongs to a quote."},"note_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the note linked as evidence for this checklist item."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote this checklist completion belongs to, or empty when it belongs to a lead or opportunity."},"step_checklist_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the step checklist item."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchLeadOpptyStepCheckListRelationInput":{"description":"Field values of a LeadOpptyStepCheckListRelation record to create, or to update when its id is set.","properties":{"cloud_object":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Document linked as evidence for this checklist item.\n\nRelated CloudObject record; see 'updateCloudObjectInput' for its fields."},"note":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Note record."}},"description":"Note linked as evidence for this checklist item.\n\nRelated Note record; see 'updateNoteInput' for its fields."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task linked as evidence for this checklist item."},"cloud_object_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the document."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email linked as evidence for this checklist item."},"item_checked":{"type":"boolean","example":false,"description":"True when the checklist item has been completed for this lead, opportunity or quote."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity, or empty when this completion belongs to a quote."},"note_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the note linked as evidence for this checklist item."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote this checklist completion belongs to, or empty when it belongs to a lead or opportunity."},"step_checklist_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the step checklist item."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"LeadProcess":{"description":"Lead process: the ordered steps that leads of its lead types move through.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the lead process label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"steps":{"type":"array","items":{"$ref":"#/components/schemas/batchStepInput"},"description":"Steps that make up this lead process, in evaluation order."},"lead_types":{"type":"array","items":{"type":"string","format":"uri","description":"Related LeadType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadType' for its fields."},"description":"Lead types that follow this lead process."}},"required":["is_delete_protected","id","name","steps","lead_types"]},"createLeadProcessInput":{"description":"Field values of a new LeadProcess record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the lead process label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"steps":{"type":"array","items":{"$ref":"#/components/schemas/batchStepInput"},"description":"Steps that make up this lead process, in evaluation order."}},"required":["name","steps"]},"updateLeadProcessInput":{"description":"Field values to change on a LeadProcess record; fields left out keep their values.","properties":{"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the lead process label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"steps":{"type":"array","items":{"$ref":"#/components/schemas/batchStepInput"},"description":"Steps that make up this lead process, in evaluation order."}}},"batchLeadProcessInput":{"description":"Field values of a LeadProcess record to create, or to update when its id is set.","properties":{"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the lead process label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"steps":{"type":"array","items":{"$ref":"#/components/schemas/batchStepInput"},"description":"Steps that make up this lead process, in evaluation order."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"LeadType":{"description":"Lead type that classifies leads and defines their forms and the lead process they follow.","properties":{"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"lead_process":{"type":"string","format":"uri","description":"Lead process (pipeline) this lead type follows.\n\nRelated LeadProcess record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadProcess' for its fields."},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing leads of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost":{"type":"object","description":"JSON definition of the form shown when archiving (losing) a lead of this type. Used to capture reason of close and any required closing fields. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost_enabled":{"type":"boolean","example":false,"description":"True when the lost form is required on archiving leads of this type."},"is_readonly":{"type":"boolean","example":false,"description":"True when the lead type is system-managed and cannot be edited or deleted by users."},"lead_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead process that leads of this type follow."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"form_edit_api":{"type":"object","description":"Typed, read-only view of a form layout of this type: form_edit_api mirrors the edit form (form_edit), form_lost_api the form shown when archiving as lost (form_lost)."},"can_change_readonly":{"type":"boolean","example":false,"description":"False for types whose read-only setting is fixed, such as the recurrent appointment type; true otherwise."},"form_lost_api":{"type":"object","description":"Typed, read-only view of a form layout of this type: form_edit_api mirrors the edit form (form_edit), form_lost_api the form shown when archiving as lost (form_lost)."}},"required":["id","lead_process","form_lost_enabled","is_readonly","lead_process_id","name","settings","has_draft","is_delete_protected","form_edit_api","form_lost_api"]},"createLeadTypeInput":{"description":"Field values of a new LeadType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing leads of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost":{"type":"object","description":"JSON definition of the form shown when archiving (losing) a lead of this type. Used to capture reason of close and any required closing fields. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost_enabled":{"type":"boolean","example":false,"description":"True when the lost form is required on archiving leads of this type."},"is_readonly":{"type":"boolean","example":false,"description":"True when the lead type is system-managed and cannot be edited or deleted by users."},"lead_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead process that leads of this type follow."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["form_lost_enabled","is_readonly","lead_process_id","name","settings"]},"updateLeadTypeInput":{"description":"Field values to change on a LeadType record; fields left out keep their values.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing leads of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost":{"type":"object","description":"JSON definition of the form shown when archiving (losing) a lead of this type. Used to capture reason of close and any required closing fields. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost_enabled":{"type":"boolean","example":false,"description":"True when the lost form is required on archiving leads of this type."},"is_readonly":{"type":"boolean","example":false,"description":"True when the lead type is system-managed and cannot be edited or deleted by users."},"lead_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead process that leads of this type follow."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchLeadTypeInput":{"description":"Field values of a LeadType record to create, or to update when its id is set.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing leads of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost":{"type":"object","description":"JSON definition of the form shown when archiving (losing) a lead of this type. Used to capture reason of close and any required closing fields. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost_enabled":{"type":"boolean","example":false,"description":"True when the lost form is required on archiving leads of this type."},"is_readonly":{"type":"boolean","example":false,"description":"True when the lead type is system-managed and cannot be edited or deleted by users."},"lead_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead process that leads of this type follow."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"MasterRight":{"description":"User role in the space that defines which features, records and pipelines its users can access.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"access_account_relation_types":{"type":"boolean","example":false,"description":"Allows users with this role to manage account hierarchy types, account and contact relation types and account roles in Administration."},"access_accounts":{"type":"boolean","example":false,"description":"Shows the Accounts screen to users with this role. Which accounts they can see and edit is set by access_entity_account."},"access_ai_automatizer":{"type":"boolean","example":false,"description":"Allows users with this role to use the AI assistant that builds and describes automation processes, when the feature is enabled for the space."},"access_ai_online_forms":{"type":"boolean","example":false,"description":"Allows users with this role to use the AI assistant that creates online forms, when the feature is enabled for the space."},"access_ai_record_detail":{"type":"boolean","example":false,"description":"Allows users with this role to use AI summaries and suggested actions on record detail screens, when the feature is enabled for the space."},"access_ai_record_enrichment":{"type":"boolean","example":false,"description":"Allows users with this role to use AI to prefill new accounts, contacts and leads from an email, when the feature is enabled for the space."},"access_ai_relationship_charts":{"type":"boolean","example":false,"description":"Allows users with this role to use AI-suggested org charts and account hierarchies, when the feature is enabled for the space."},"access_ai_reports":{"type":"boolean","example":false,"description":"Allows users with this role to use the AI assistant that builds reports, when the feature is enabled for the space."},"access_ai_smart_field":{"type":"boolean","example":false,"description":"Allows users with this role to use AI smart fields, whose values are generated by AI, when the feature is enabled for the space."},"access_appointment_scheduler":{"type":"boolean","example":false,"description":"Allows users with this role to publish appointment schedules that let others book meetings with them, when the feature is enabled for the space. Turning it off disables the schedules of the users with this role."},"access_appointment_scheduler_management":{"type":"boolean","example":false,"description":"Allows users with this role to manage appointment schedules of other users."},"access_approval_processes":{"type":"boolean","example":false,"description":"Allows users with this role to create approval processes and manage their own, when approval processes are enabled for the space."},"access_approval_processes_management":{"type":"boolean","example":false,"description":"Allows users with this role to manage approval processes owned by other users."},"access_approvals":{"type":"boolean","example":false,"description":"Allows users with this role to open the Approvals screen and act on approval requests, when approval processes are enabled for the space."},"access_archive":{"type":"boolean","example":false,"description":"Allows users with this role to open the Archive screens listing lost, closed and archived records."},"access_audit":{"type":"boolean","example":false,"description":"Allows users with this role to open the Audit screen."},"access_audit_log":{"type":"boolean","example":false,"description":"Allows users with this role to view the audit log of changes made in the space."},"access_bottom_menu_customization":{"type":"boolean","example":false,"description":"Whether users with this role may reorder and pin their own bottom menu (\"Users can customize the bar\"). Off by default: users get the layout set in bottom_menu_layout; a layout of their own (UISettings.bottom_menu_layout) is still stored but read as null until this is switched on."},"access_bulk_update":{"type":"boolean","example":false,"description":"Allows users with this role to update many records at once with bulk update."},"access_calling":{"type":"boolean","example":false,"description":"Allows users with this role to make calls through the calling integration, when the feature is enabled for the space."},"access_calling_company_phone":{"type":"integer","description":"Which company phone numbers users with this role can use for calls and text messages: none (NoAccess), those in allowed_company_phones (Selected) or all (All).\n\nInteger enum value: 0 - NoAccess, 1 - Selected, 2 - All","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"None can be used.","1":"Only those listed in the role's allowedCompanyEmails or allowedCompanyPhones.","2":"All company email accounts or phone numbers can be used."}},"access_calling_purchase_phone":{"type":"boolean","example":false,"description":"Allows users with this role to purchase and manage company phone numbers for the calling integration."},"access_company_emails":{"type":"integer","description":"Which shared company email accounts users with this role can send from: none (NoAccess), those in allowed_company_emails (Selected) or all (All).\n\nInteger enum value: 0 - NoAccess, 1 - Selected, 2 - All","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"None can be used.","1":"Only those listed in the role's allowedCompanyEmails or allowedCompanyPhones.","2":"All company email accounts or phone numbers can be used."}},"access_contacts":{"type":"boolean","example":false,"description":"Shows the Contacts screen to users with this role. Which contacts they can see and edit is set by access_entity_contact."},"access_document_management":{"type":"boolean","example":false,"description":"Allows users with this role to browse and work with documents in the Document Manager, when the feature is enabled for the space."},"access_document_management_company":{"type":"boolean","example":false,"description":"Allows users with this role to manage company documents and folders that are not tied to a record."},"access_document_management_record":{"type":"boolean","example":false,"description":"Allows users with this role to create and edit the document folders used for records."},"access_duplicate_checker":{"type":"boolean","example":false,"description":"Allows users with this role to use the duplicate checker to find duplicate records, when the feature is enabled for the space."},"access_email_notification_enforcement":{"type":"boolean","example":false,"description":"When true, users with this role get the email notification preferences from access_email_notification_settings and cannot change their own."},"access_email_notification_settings":{"type":"object","description":"Default email notification preferences applied to users with this role (which events trigger an email and through which channel)."},"access_entity_account":{"type":"integer","description":"Level of access to accounts for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the accounts the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_account_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing accounts."},"access_entity_account_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete accounts they can edit."},"access_entity_account_direction":{"type":"integer","description":"Which accounts users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_account_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private accounts, which are visible only to their owner."},"access_entity_account_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for accounts."},"access_entity_account_types":{"type":"integer","description":"Whether users with this role can work with all account types (All) or only with those in allowed_account_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_appointment":{"type":"integer","description":"Level of access to appointments for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the appointments the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_appointment_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete appointments they can edit."},"access_entity_appointment_direction":{"type":"integer","description":"Which appointments users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_appointment_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for appointments."},"access_entity_appointment_types":{"type":"integer","description":"Whether users with this role can work with all appointment types (All) or only with those in allowed_appointment_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_better_navigator":{"type":"integer","description":"Level of access to Navigator screen layouts for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_better_navigator_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete Navigator screen layouts owned by other users."},"access_entity_better_navigator_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete Navigator screen layouts they own."},"access_entity_better_navigator_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their Navigator screen layouts with selected users and sales units."},"access_entity_better_navigator_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their Navigator screen layouts with all users of the space."},"access_entity_contact":{"type":"integer","description":"Level of access to contacts for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the contacts the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_contact_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing contacts."},"access_entity_contact_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete contacts they can edit."},"access_entity_contact_direction":{"type":"integer","description":"Which contacts users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_contact_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private contacts, which are visible only to their owner."},"access_entity_contact_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for contacts."},"access_entity_contact_types":{"type":"integer","description":"Whether users with this role can work with all contact types (All) or only with those in allowed_contact_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_dashboard":{"type":"integer","description":"Level of access to dashboards for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All). Dashboards are unavailable while access_entity_report is NoAccess.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_dashboard_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete dashboards owned by other users."},"access_entity_dashboard_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete dashboards they own."},"access_entity_dashboard_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their dashboards with selected users and sales units."},"access_entity_dashboard_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their dashboards with all users of the space."},"access_entity_email_access_level":{"type":"integer","description":"Which emails users with this role see on records, reports, feeds and automation. Default: any email linked to a record the user can see. UsersAndSalesUnits: only emails owned by or shared by users / sales unit members in access_entity_email_allowed (own and shared-with-me emails always stay visible). The Inbox is not affected.\n\nInteger enum value: 0 - Default, 1 - UsersAndSalesUnits","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"Every email linked to a record the user can see.","1":"Only emails owned or shared by the users and sales unit members in accessEntityEmailAllowed, plus the user's own emails and emails shared with them."}},"access_entity_email_allowed":{"type":"object","description":"Allow-list for access_entity_email_access_level = UsersAndSalesUnits: users and sales units (their Member users) whose emails stay visible. Kept when switching back to Default."},"access_entity_email_content_share_mode":{"type":"integer","description":"How users with this role can share the body of their emails: always private (PrivateOnly), always public (PublicOnly) or chosen per email (Custom).\n\nInteger enum value: 0 - PrivateOnly, 1 - Custom, 2 - PublicOnly","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Email bodies are always private.","1":"Users choose per email, starting from their default in emailDefaultContentSharingMode.","2":"Email bodies are always public."}},"access_entity_email_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete emails they neither own nor sent."},"access_entity_email_link_to_accounts":{"type":"integer","description":"Whether the email integration of users with this role links emails to the accounts of their recipients. Custom leaves it to each user's own email settings.\n\nInteger enum value: 0 - Custom, 1 - On, 2 - Off","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Each user's own setting applies.","1":"The setting is on for every user with the role.","2":"The setting is off for every user with the role."}},"access_entity_email_link_to_accounts_by_domain":{"type":"integer","description":"Whether the email integration of users with this role links emails to accounts whose website domain matches a recipient's email domain. Custom leaves it to each user's own email settings.\n\nInteger enum value: 0 - Custom, 1 - On, 2 - Off","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Each user's own setting applies.","1":"The setting is on for every user with the role.","2":"The setting is off for every user with the role."}},"access_entity_email_link_to_contacts":{"type":"integer","description":"Whether the email integration of users with this role links emails to the contacts of their recipients. Custom leaves it to each user's own email settings.\n\nInteger enum value: 0 - Custom, 1 - On, 2 - Off","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Each user's own setting applies.","1":"The setting is on for every user with the role.","2":"The setting is off for every user with the role."}},"access_entity_email_sequence":{"type":"integer","description":"Level of access to email sequences for users with this role, when email sequences are enabled for the space: none (NoAccess), only their own (Personal) or all (FullAccess).\n\nInteger enum value: 1 - FullAccess, 2 - Personal, 3 - NoAccess","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The user can view and manage all email sequences.","2":"The user can view and manage only their own personal email sequences.","3":"Email sequences are not available to the user."}},"access_entity_email_template":{"type":"integer","description":"Level of access to email templates for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_email_template_create_delete_folder":{"type":"boolean","example":false,"description":"Allows users with this role to create and delete email template folders."},"access_entity_email_template_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete email templates owned by other users."},"access_entity_email_template_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete email templates they own."},"access_entity_email_template_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their email templates with selected users and sales units."},"access_entity_email_template_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their email templates with all users of the space."},"access_entity_forecast":{"type":"integer","description":"Level of access to forecasts for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_forecast_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete forecasts owned by other users."},"access_entity_forecast_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete forecasts they own."},"access_entity_forecast_edit_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to edit forecasts owned by other users."},"access_entity_forecast_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their forecasts with selected users and sales units."},"access_entity_forecast_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their forecasts with all users of the space."},"access_entity_form_view":{"type":"integer","description":"Level of access to form views for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_form_view_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete form views owned by other users."},"access_entity_form_view_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete form views they own."},"access_entity_form_view_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their form views with selected users and sales units."},"access_entity_form_view_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their form views with all users of the space."},"access_entity_lead":{"type":"integer","description":"Level of access to leads for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the leads the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_lead_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing leads."},"access_entity_lead_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete leads they can edit."},"access_entity_lead_direction":{"type":"integer","description":"Which leads users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_lead_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private leads, which are visible only to their owner."},"access_entity_lead_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for leads."},"access_entity_lead_types":{"type":"integer","description":"Whether users with this role can work with all lead types (All) or only with those in allowed_lead_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_message_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for emails, memos and text messages."},"access_entity_oppty":{"type":"integer","description":"Level of access to opportunities for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the opportunities the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_oppty_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing opportunities."},"access_entity_oppty_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete opportunities they can edit."},"access_entity_oppty_direction":{"type":"integer","description":"Which opportunities users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_oppty_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private opportunities, which are visible only to their owner."},"access_entity_oppty_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for opportunities."},"access_entity_pipeline":{"type":"integer","description":"Which pipelines users with this role can work with: none (NoPipeline), those in allowed_pipelines (Selected), or all with or without access to pipeline step documents (AllWithDocuments, AllNoDocuments).\n\nInteger enum value: 0 - NoPipeline, 1 - Selected, 2 - AllNoDocuments, 3 - AllWithDocuments","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"No pipelines are available to the user.","1":"Only the pipelines listed in the role's allowedPipelines, each with its own step document access.","2":"All pipelines, without access to documents attached to pipeline steps.","3":"All pipelines, including documents attached to pipeline steps."}},"access_entity_process":{"type":"integer","description":"Level of access to automation processes for users with this role, when process automation is enabled for the space: none (NoAccess), only their own (Personal) or all (FullAccess).\n\nInteger enum value: 1 - FullAccess, 2 - Personal, 3 - NoAccess","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The user can view and manage all processes.","2":"The user can view and manage only their own personal processes; space processes cannot be changed.","3":"Processes are not available to the user."}},"access_entity_profile":{"type":"integer","description":"Level of access to screen profiles (saved screen views) for users with this role: use of those shared with them (Readonly) or also creating their own (All). NoAccess is rejected.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_profile_default_screen_profiles":{"type":"object","description":"Default screen profile ids assigned to users with this role for each main screen (Navigator, Pipeline, Lead, Account, Contact, Activity, Project, Quote, etc.)."},"access_entity_profile_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete screen profiles owned by other users."},"access_entity_profile_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete screen profiles they own."},"access_entity_profile_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their screen profiles with selected users and sales units."},"access_entity_profile_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their screen profiles with all users of the space."},"access_entity_project":{"type":"integer","description":"Level of access to projects for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the projects the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_project_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing projects."},"access_entity_project_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete projects they can edit."},"access_entity_project_direction":{"type":"integer","description":"Which projects users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_project_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private projects, which are visible only to their owner."},"access_entity_project_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for projects."},"access_entity_quote":{"type":"integer","description":"Level of access to quotes for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the quotes the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_quote_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing quotes."},"access_entity_quote_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete quotes they can edit."},"access_entity_quote_direction":{"type":"integer","description":"Which quotes users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_quote_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for quotes."},"access_entity_quote_types":{"type":"integer","description":"Whether users with this role can work with all quote types (All) or only with those in allowed_quote_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_report":{"type":"integer","description":"Level of access to reports for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_report_create_delete_folder":{"type":"boolean","example":false,"description":"Allows users with this role to create and delete report folders."},"access_entity_report_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete reports owned by other users."},"access_entity_report_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete reports they own."},"access_entity_report_private":{"type":"boolean","example":false,"description":"Allows users with this role to save reports as private, visible only to themselves."},"access_entity_report_schedule_create":{"type":"boolean","example":false,"description":"Allows users with this role to schedule reports for regular delivery."},"access_entity_report_schedule_management":{"type":"boolean","example":false,"description":"Allows users with this role to view and manage report schedules of other users."},"access_entity_report_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their reports with selected users and sales units."},"access_entity_report_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their reports with all users of the space."},"access_entity_solution":{"type":"boolean","example":false,"description":"Allows users with this role to view and follow solutions, when the feature is enabled for the space."},"access_entity_solution_management":{"type":"boolean","example":false,"description":"Allows users with this role to create, edit and delete solutions."},"access_entity_target":{"type":"integer","description":"Level of access to targets for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_target_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete targets owned by other users."},"access_entity_target_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete targets they own."},"access_entity_task":{"type":"integer","description":"Level of access to tasks for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the tasks the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_task_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete tasks they can edit."},"access_entity_task_direction":{"type":"integer","description":"Which tasks users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_task_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for tasks."},"access_entity_task_types":{"type":"integer","description":"Whether users with this role can work with all task types (All) or only with those in allowed_task_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_task_unassigned":{"type":"boolean","example":false,"description":"Allows users with this role to create tasks without an owner (unassigned tasks)."},"access_export":{"type":"boolean","example":false,"description":"Allows users with this role to export records and reports to files."},"access_feeds":{"type":"boolean","example":false,"description":"Allows users with this role to open the Feed screen with the stream of activities, emails and other updates."},"access_foreign_currencies":{"type":"boolean","example":false,"description":"Allows users with this role to manage currencies and exchange rate lists in Administration."},"access_form_and_fields":{"type":"boolean","example":false,"description":"Allows users with this role to manage fields, forms, record types, tags and translations in Administration."},"access_global_settings":{"type":"boolean","example":false,"description":"Allows users with this role to manage the global settings of the space in Administration, including the Automation Hub and API access."},"access_home_screen":{"type":"boolean","example":false,"description":"Allows users with this role to open the Navigator screen."},"access_import":{"type":"boolean","example":false,"description":"Allows users with this role to import records from files."},"access_insights":{"type":"boolean","example":false,"description":"Allows users with this role to open the Insights area with sales performance, indicator, conversion and lifecycle overviews."},"access_leads":{"type":"boolean","example":false,"description":"Shows the Leads screen to users with this role. Which leads they can see and edit is set by access_entity_lead."},"access_online_forms":{"type":"boolean","example":false,"description":"Allows users with this role to create online forms and manage their own, when online forms are enabled for the space."},"access_online_forms_management":{"type":"boolean","example":false,"description":"Allows users with this role to edit and delete online forms owned by other users."},"access_opportunity":{"type":"boolean","example":false,"description":"Shows the Opportunities screen to users with this role. Which opportunities they can see and edit is set by access_entity_oppty."},"access_pipeline_configuration":{"type":"boolean","example":false,"description":"Allows users with this role to manage pipelines, lead processes and quote processes in Administration."},"access_print":{"type":"boolean","example":false,"description":"Allows users with this role to print records and reports."},"access_products_services":{"type":"boolean","example":false,"description":"Allows users with this role to manage products, product categories and price lists in Administration."},"access_projects":{"type":"boolean","example":false,"description":"Allows users with this role to use Projects, when the feature is enabled for the space. Which projects they can see and edit is set by access_entity_project."},"access_quotes":{"type":"boolean","example":false,"description":"Allows users with this role to use Quotes, when the feature is enabled for the space. Which quotes they can see and edit is set by access_entity_quote."},"access_sales_roles":{"type":"boolean","example":false,"description":"Allows users with this role to manage sales roles in Administration."},"access_security":{"type":"boolean","example":false,"description":"Allows users with this role to manage the security settings of the space in Administration."},"access_units":{"type":"boolean","example":false,"description":"Allows users with this role to manage sales units in Administration."},"access_user_and_roles":{"type":"boolean","example":false,"description":"Allows users with this role to manage users, user roles and sales unit membership in Administration. Cannot be turned off on the default administrator role."},"access_whats_app_company_phone":{"type":"integer","description":"Which company phone numbers users with this role can use for WhatsApp messages, when WhatsApp is enabled for the space: none (NoAccess), those in allowed_company_phones (Selected) or all (All).\n\nInteger enum value: 0 - NoAccess, 1 - Selected, 2 - All","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"None can be used.","1":"Only those listed in the role's allowedCompanyEmails or allowedCompanyPhones.","2":"All company email accounts or phone numbers can be used."}},"bottom_menu_layout":{"type":"object","description":"The role's Navigation list as one tree: top-level rows in the role's default bottom menu order, where a group row (kind Section: Communication, Analytics, Archive, Tools or a custom section) carries its member items. Stored as the client sent it; until it is saved once the default list is returned, everything enabled and pinned. The access_* flags of the role are not touched by it: the client sends both."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"allowed_pipelines":{"type":"array","items":{"type":"string","format":"uri","description":"Related AllowedPipeline record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AllowedPipeline' for its fields."},"description":"Pipelines this user role can use. Effective only when access_entity_pipeline is set to Selected; with All-* values every pipeline is granted."},"allowed_lead_types":{"type":"array","items":{"type":"string","format":"uri","description":"Related AllowedLeadType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AllowedLeadType' for its fields."},"description":"Lead types this user role can use. Effective only when access_entity_lead_types is set to Selected."},"allowed_quote_types":{"type":"array","items":{"type":"string","format":"uri","description":"Related AllowedQuoteType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AllowedQuoteType' for its fields."},"description":"Quote types this user role can use. Effective only when access_entity_quote_types is set to Selected."},"allowed_account_types":{"type":"array","items":{"type":"string","format":"uri","description":"Related AllowedAccountType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AllowedAccountType' for its fields."},"description":"Account types this user role can use. Effective only when access_entity_account_types is set to Selected."},"allowed_contact_types":{"type":"array","items":{"type":"string","format":"uri","description":"Related AllowedContactType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AllowedContactType' for its fields."},"description":"Contact types this user role can use. Effective only when access_entity_contact_types is set to Selected."},"allowed_task_types":{"type":"array","items":{"type":"string","format":"uri","description":"Related AllowedTaskType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AllowedTaskType' for its fields."},"description":"Task types this user role can use. Effective only when access_entity_task_types is set to Selected."},"allowed_appointment_types":{"type":"array","items":{"type":"string","format":"uri","description":"Related AllowedAppointmentType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AllowedAppointmentType' for its fields."},"description":"Appointment types this user role can use. Effective only when access_entity_appointment_types is set to Selected. The recurrent appointment type is always granted implicitly and cannot be stored here."},"allowed_company_emails":{"type":"array","items":{"type":"string","format":"uri","description":"Related AllowedCompanyEmail record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AllowedCompanyEmail' for its fields."},"description":"Company email addresses this user role can send from. Effective only when access_company_emails is set to Selected."},"allowed_company_phones":{"type":"array","items":{"type":"string","format":"uri","description":"Related AllowedCompanyPhone record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AllowedCompanyPhone' for its fields."},"description":"Company phones this user role can use for calling/SMS. Effective only when access_calling_company_phone is set to Selected."},"custom_entities":{"type":"string","format":"binary","example":"blob","description":"Per-custom-entity access settings (access level, allowed types, default screen profile, etc.) for users with this role. One entry per custom entity defined in the space."}},"required":["is_delete_protected","id","name"]},"createMasterRightInput":{"description":"Field values of a new MasterRight record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"access_account_relation_types":{"type":"boolean","example":false,"description":"Allows users with this role to manage account hierarchy types, account and contact relation types and account roles in Administration."},"access_accounts":{"type":"boolean","example":false,"description":"Shows the Accounts screen to users with this role. Which accounts they can see and edit is set by access_entity_account."},"access_ai_automatizer":{"type":"boolean","example":false,"description":"Allows users with this role to use the AI assistant that builds and describes automation processes, when the feature is enabled for the space."},"access_ai_online_forms":{"type":"boolean","example":false,"description":"Allows users with this role to use the AI assistant that creates online forms, when the feature is enabled for the space."},"access_ai_record_detail":{"type":"boolean","example":false,"description":"Allows users with this role to use AI summaries and suggested actions on record detail screens, when the feature is enabled for the space."},"access_ai_record_enrichment":{"type":"boolean","example":false,"description":"Allows users with this role to use AI to prefill new accounts, contacts and leads from an email, when the feature is enabled for the space."},"access_ai_relationship_charts":{"type":"boolean","example":false,"description":"Allows users with this role to use AI-suggested org charts and account hierarchies, when the feature is enabled for the space."},"access_ai_reports":{"type":"boolean","example":false,"description":"Allows users with this role to use the AI assistant that builds reports, when the feature is enabled for the space."},"access_ai_smart_field":{"type":"boolean","example":false,"description":"Allows users with this role to use AI smart fields, whose values are generated by AI, when the feature is enabled for the space."},"access_appointment_scheduler":{"type":"boolean","example":false,"description":"Allows users with this role to publish appointment schedules that let others book meetings with them, when the feature is enabled for the space. Turning it off disables the schedules of the users with this role."},"access_appointment_scheduler_management":{"type":"boolean","example":false,"description":"Allows users with this role to manage appointment schedules of other users."},"access_approval_processes":{"type":"boolean","example":false,"description":"Allows users with this role to create approval processes and manage their own, when approval processes are enabled for the space."},"access_approval_processes_management":{"type":"boolean","example":false,"description":"Allows users with this role to manage approval processes owned by other users."},"access_approvals":{"type":"boolean","example":false,"description":"Allows users with this role to open the Approvals screen and act on approval requests, when approval processes are enabled for the space."},"access_archive":{"type":"boolean","example":false,"description":"Allows users with this role to open the Archive screens listing lost, closed and archived records."},"access_audit":{"type":"boolean","example":false,"description":"Allows users with this role to open the Audit screen."},"access_audit_log":{"type":"boolean","example":false,"description":"Allows users with this role to view the audit log of changes made in the space."},"access_bottom_menu_customization":{"type":"boolean","example":false,"description":"Whether users with this role may reorder and pin their own bottom menu (\"Users can customize the bar\"). Off by default: users get the layout set in bottom_menu_layout; a layout of their own (UISettings.bottom_menu_layout) is still stored but read as null until this is switched on."},"access_bulk_update":{"type":"boolean","example":false,"description":"Allows users with this role to update many records at once with bulk update."},"access_calling":{"type":"boolean","example":false,"description":"Allows users with this role to make calls through the calling integration, when the feature is enabled for the space."},"access_calling_company_phone":{"type":"integer","description":"Which company phone numbers users with this role can use for calls and text messages: none (NoAccess), those in allowed_company_phones (Selected) or all (All).\n\nInteger enum value: 0 - NoAccess, 1 - Selected, 2 - All","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"None can be used.","1":"Only those listed in the role's allowedCompanyEmails or allowedCompanyPhones.","2":"All company email accounts or phone numbers can be used."}},"access_calling_purchase_phone":{"type":"boolean","example":false,"description":"Allows users with this role to purchase and manage company phone numbers for the calling integration."},"access_company_emails":{"type":"integer","description":"Which shared company email accounts users with this role can send from: none (NoAccess), those in allowed_company_emails (Selected) or all (All).\n\nInteger enum value: 0 - NoAccess, 1 - Selected, 2 - All","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"None can be used.","1":"Only those listed in the role's allowedCompanyEmails or allowedCompanyPhones.","2":"All company email accounts or phone numbers can be used."}},"access_contacts":{"type":"boolean","example":false,"description":"Shows the Contacts screen to users with this role. Which contacts they can see and edit is set by access_entity_contact."},"access_document_management":{"type":"boolean","example":false,"description":"Allows users with this role to browse and work with documents in the Document Manager, when the feature is enabled for the space."},"access_document_management_company":{"type":"boolean","example":false,"description":"Allows users with this role to manage company documents and folders that are not tied to a record."},"access_document_management_record":{"type":"boolean","example":false,"description":"Allows users with this role to create and edit the document folders used for records."},"access_duplicate_checker":{"type":"boolean","example":false,"description":"Allows users with this role to use the duplicate checker to find duplicate records, when the feature is enabled for the space."},"access_email_notification_enforcement":{"type":"boolean","example":false,"description":"When true, users with this role get the email notification preferences from access_email_notification_settings and cannot change their own."},"access_email_notification_settings":{"type":"object","description":"Default email notification preferences applied to users with this role (which events trigger an email and through which channel)."},"access_entity_account":{"type":"integer","description":"Level of access to accounts for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the accounts the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_account_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing accounts."},"access_entity_account_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete accounts they can edit."},"access_entity_account_direction":{"type":"integer","description":"Which accounts users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_account_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private accounts, which are visible only to their owner."},"access_entity_account_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for accounts."},"access_entity_account_types":{"type":"integer","description":"Whether users with this role can work with all account types (All) or only with those in allowed_account_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_appointment":{"type":"integer","description":"Level of access to appointments for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the appointments the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_appointment_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete appointments they can edit."},"access_entity_appointment_direction":{"type":"integer","description":"Which appointments users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_appointment_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for appointments."},"access_entity_appointment_types":{"type":"integer","description":"Whether users with this role can work with all appointment types (All) or only with those in allowed_appointment_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_better_navigator":{"type":"integer","description":"Level of access to Navigator screen layouts for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_better_navigator_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete Navigator screen layouts owned by other users."},"access_entity_better_navigator_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete Navigator screen layouts they own."},"access_entity_better_navigator_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their Navigator screen layouts with selected users and sales units."},"access_entity_better_navigator_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their Navigator screen layouts with all users of the space."},"access_entity_contact":{"type":"integer","description":"Level of access to contacts for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the contacts the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_contact_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing contacts."},"access_entity_contact_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete contacts they can edit."},"access_entity_contact_direction":{"type":"integer","description":"Which contacts users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_contact_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private contacts, which are visible only to their owner."},"access_entity_contact_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for contacts."},"access_entity_contact_types":{"type":"integer","description":"Whether users with this role can work with all contact types (All) or only with those in allowed_contact_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_dashboard":{"type":"integer","description":"Level of access to dashboards for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All). Dashboards are unavailable while access_entity_report is NoAccess.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_dashboard_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete dashboards owned by other users."},"access_entity_dashboard_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete dashboards they own."},"access_entity_dashboard_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their dashboards with selected users and sales units."},"access_entity_dashboard_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their dashboards with all users of the space."},"access_entity_email_access_level":{"type":"integer","description":"Which emails users with this role see on records, reports, feeds and automation. Default: any email linked to a record the user can see. UsersAndSalesUnits: only emails owned by or shared by users / sales unit members in access_entity_email_allowed (own and shared-with-me emails always stay visible). The Inbox is not affected.\n\nInteger enum value: 0 - Default, 1 - UsersAndSalesUnits","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"Every email linked to a record the user can see.","1":"Only emails owned or shared by the users and sales unit members in accessEntityEmailAllowed, plus the user's own emails and emails shared with them."}},"access_entity_email_allowed":{"type":"object","description":"Allow-list for access_entity_email_access_level = UsersAndSalesUnits: users and sales units (their Member users) whose emails stay visible. Kept when switching back to Default."},"access_entity_email_content_share_mode":{"type":"integer","description":"How users with this role can share the body of their emails: always private (PrivateOnly), always public (PublicOnly) or chosen per email (Custom).\n\nInteger enum value: 0 - PrivateOnly, 1 - Custom, 2 - PublicOnly","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Email bodies are always private.","1":"Users choose per email, starting from their default in emailDefaultContentSharingMode.","2":"Email bodies are always public."}},"access_entity_email_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete emails they neither own nor sent."},"access_entity_email_link_to_accounts":{"type":"integer","description":"Whether the email integration of users with this role links emails to the accounts of their recipients. Custom leaves it to each user's own email settings.\n\nInteger enum value: 0 - Custom, 1 - On, 2 - Off","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Each user's own setting applies.","1":"The setting is on for every user with the role.","2":"The setting is off for every user with the role."}},"access_entity_email_link_to_accounts_by_domain":{"type":"integer","description":"Whether the email integration of users with this role links emails to accounts whose website domain matches a recipient's email domain. Custom leaves it to each user's own email settings.\n\nInteger enum value: 0 - Custom, 1 - On, 2 - Off","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Each user's own setting applies.","1":"The setting is on for every user with the role.","2":"The setting is off for every user with the role."}},"access_entity_email_link_to_contacts":{"type":"integer","description":"Whether the email integration of users with this role links emails to the contacts of their recipients. Custom leaves it to each user's own email settings.\n\nInteger enum value: 0 - Custom, 1 - On, 2 - Off","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Each user's own setting applies.","1":"The setting is on for every user with the role.","2":"The setting is off for every user with the role."}},"access_entity_email_sequence":{"type":"integer","description":"Level of access to email sequences for users with this role, when email sequences are enabled for the space: none (NoAccess), only their own (Personal) or all (FullAccess).\n\nInteger enum value: 1 - FullAccess, 2 - Personal, 3 - NoAccess","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The user can view and manage all email sequences.","2":"The user can view and manage only their own personal email sequences.","3":"Email sequences are not available to the user."}},"access_entity_email_template":{"type":"integer","description":"Level of access to email templates for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_email_template_create_delete_folder":{"type":"boolean","example":false,"description":"Allows users with this role to create and delete email template folders."},"access_entity_email_template_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete email templates owned by other users."},"access_entity_email_template_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete email templates they own."},"access_entity_email_template_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their email templates with selected users and sales units."},"access_entity_email_template_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their email templates with all users of the space."},"access_entity_forecast":{"type":"integer","description":"Level of access to forecasts for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_forecast_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete forecasts owned by other users."},"access_entity_forecast_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete forecasts they own."},"access_entity_forecast_edit_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to edit forecasts owned by other users."},"access_entity_forecast_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their forecasts with selected users and sales units."},"access_entity_forecast_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their forecasts with all users of the space."},"access_entity_form_view":{"type":"integer","description":"Level of access to form views for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_form_view_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete form views owned by other users."},"access_entity_form_view_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete form views they own."},"access_entity_form_view_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their form views with selected users and sales units."},"access_entity_form_view_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their form views with all users of the space."},"access_entity_lead":{"type":"integer","description":"Level of access to leads for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the leads the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_lead_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing leads."},"access_entity_lead_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete leads they can edit."},"access_entity_lead_direction":{"type":"integer","description":"Which leads users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_lead_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private leads, which are visible only to their owner."},"access_entity_lead_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for leads."},"access_entity_lead_types":{"type":"integer","description":"Whether users with this role can work with all lead types (All) or only with those in allowed_lead_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_message_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for emails, memos and text messages."},"access_entity_oppty":{"type":"integer","description":"Level of access to opportunities for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the opportunities the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_oppty_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing opportunities."},"access_entity_oppty_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete opportunities they can edit."},"access_entity_oppty_direction":{"type":"integer","description":"Which opportunities users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_oppty_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private opportunities, which are visible only to their owner."},"access_entity_oppty_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for opportunities."},"access_entity_pipeline":{"type":"integer","description":"Which pipelines users with this role can work with: none (NoPipeline), those in allowed_pipelines (Selected), or all with or without access to pipeline step documents (AllWithDocuments, AllNoDocuments).\n\nInteger enum value: 0 - NoPipeline, 1 - Selected, 2 - AllNoDocuments, 3 - AllWithDocuments","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"No pipelines are available to the user.","1":"Only the pipelines listed in the role's allowedPipelines, each with its own step document access.","2":"All pipelines, without access to documents attached to pipeline steps.","3":"All pipelines, including documents attached to pipeline steps."}},"access_entity_process":{"type":"integer","description":"Level of access to automation processes for users with this role, when process automation is enabled for the space: none (NoAccess), only their own (Personal) or all (FullAccess).\n\nInteger enum value: 1 - FullAccess, 2 - Personal, 3 - NoAccess","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The user can view and manage all processes.","2":"The user can view and manage only their own personal processes; space processes cannot be changed.","3":"Processes are not available to the user."}},"access_entity_profile":{"type":"integer","description":"Level of access to screen profiles (saved screen views) for users with this role: use of those shared with them (Readonly) or also creating their own (All). NoAccess is rejected.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_profile_default_screen_profiles":{"type":"object","description":"Default screen profile ids assigned to users with this role for each main screen (Navigator, Pipeline, Lead, Account, Contact, Activity, Project, Quote, etc.)."},"access_entity_profile_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete screen profiles owned by other users."},"access_entity_profile_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete screen profiles they own."},"access_entity_profile_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their screen profiles with selected users and sales units."},"access_entity_profile_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their screen profiles with all users of the space."},"access_entity_project":{"type":"integer","description":"Level of access to projects for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the projects the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_project_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing projects."},"access_entity_project_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete projects they can edit."},"access_entity_project_direction":{"type":"integer","description":"Which projects users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_project_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private projects, which are visible only to their owner."},"access_entity_project_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for projects."},"access_entity_quote":{"type":"integer","description":"Level of access to quotes for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the quotes the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_quote_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing quotes."},"access_entity_quote_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete quotes they can edit."},"access_entity_quote_direction":{"type":"integer","description":"Which quotes users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_quote_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for quotes."},"access_entity_quote_types":{"type":"integer","description":"Whether users with this role can work with all quote types (All) or only with those in allowed_quote_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_report":{"type":"integer","description":"Level of access to reports for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_report_create_delete_folder":{"type":"boolean","example":false,"description":"Allows users with this role to create and delete report folders."},"access_entity_report_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete reports owned by other users."},"access_entity_report_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete reports they own."},"access_entity_report_private":{"type":"boolean","example":false,"description":"Allows users with this role to save reports as private, visible only to themselves."},"access_entity_report_schedule_create":{"type":"boolean","example":false,"description":"Allows users with this role to schedule reports for regular delivery."},"access_entity_report_schedule_management":{"type":"boolean","example":false,"description":"Allows users with this role to view and manage report schedules of other users."},"access_entity_report_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their reports with selected users and sales units."},"access_entity_report_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their reports with all users of the space."},"access_entity_solution":{"type":"boolean","example":false,"description":"Allows users with this role to view and follow solutions, when the feature is enabled for the space."},"access_entity_solution_management":{"type":"boolean","example":false,"description":"Allows users with this role to create, edit and delete solutions."},"access_entity_target":{"type":"integer","description":"Level of access to targets for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_target_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete targets owned by other users."},"access_entity_target_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete targets they own."},"access_entity_task":{"type":"integer","description":"Level of access to tasks for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the tasks the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_task_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete tasks they can edit."},"access_entity_task_direction":{"type":"integer","description":"Which tasks users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_task_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for tasks."},"access_entity_task_types":{"type":"integer","description":"Whether users with this role can work with all task types (All) or only with those in allowed_task_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_task_unassigned":{"type":"boolean","example":false,"description":"Allows users with this role to create tasks without an owner (unassigned tasks)."},"access_export":{"type":"boolean","example":false,"description":"Allows users with this role to export records and reports to files."},"access_feeds":{"type":"boolean","example":false,"description":"Allows users with this role to open the Feed screen with the stream of activities, emails and other updates."},"access_foreign_currencies":{"type":"boolean","example":false,"description":"Allows users with this role to manage currencies and exchange rate lists in Administration."},"access_form_and_fields":{"type":"boolean","example":false,"description":"Allows users with this role to manage fields, forms, record types, tags and translations in Administration."},"access_global_settings":{"type":"boolean","example":false,"description":"Allows users with this role to manage the global settings of the space in Administration, including the Automation Hub and API access."},"access_home_screen":{"type":"boolean","example":false,"description":"Allows users with this role to open the Navigator screen."},"access_import":{"type":"boolean","example":false,"description":"Allows users with this role to import records from files."},"access_insights":{"type":"boolean","example":false,"description":"Allows users with this role to open the Insights area with sales performance, indicator, conversion and lifecycle overviews."},"access_leads":{"type":"boolean","example":false,"description":"Shows the Leads screen to users with this role. Which leads they can see and edit is set by access_entity_lead."},"access_online_forms":{"type":"boolean","example":false,"description":"Allows users with this role to create online forms and manage their own, when online forms are enabled for the space."},"access_online_forms_management":{"type":"boolean","example":false,"description":"Allows users with this role to edit and delete online forms owned by other users."},"access_opportunity":{"type":"boolean","example":false,"description":"Shows the Opportunities screen to users with this role. Which opportunities they can see and edit is set by access_entity_oppty."},"access_pipeline_configuration":{"type":"boolean","example":false,"description":"Allows users with this role to manage pipelines, lead processes and quote processes in Administration."},"access_print":{"type":"boolean","example":false,"description":"Allows users with this role to print records and reports."},"access_products_services":{"type":"boolean","example":false,"description":"Allows users with this role to manage products, product categories and price lists in Administration."},"access_projects":{"type":"boolean","example":false,"description":"Allows users with this role to use Projects, when the feature is enabled for the space. Which projects they can see and edit is set by access_entity_project."},"access_quotes":{"type":"boolean","example":false,"description":"Allows users with this role to use Quotes, when the feature is enabled for the space. Which quotes they can see and edit is set by access_entity_quote."},"access_sales_roles":{"type":"boolean","example":false,"description":"Allows users with this role to manage sales roles in Administration."},"access_security":{"type":"boolean","example":false,"description":"Allows users with this role to manage the security settings of the space in Administration."},"access_units":{"type":"boolean","example":false,"description":"Allows users with this role to manage sales units in Administration."},"access_user_and_roles":{"type":"boolean","example":false,"description":"Allows users with this role to manage users, user roles and sales unit membership in Administration. Cannot be turned off on the default administrator role."},"access_whats_app_company_phone":{"type":"integer","description":"Which company phone numbers users with this role can use for WhatsApp messages, when WhatsApp is enabled for the space: none (NoAccess), those in allowed_company_phones (Selected) or all (All).\n\nInteger enum value: 0 - NoAccess, 1 - Selected, 2 - All","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"None can be used.","1":"Only those listed in the role's allowedCompanyEmails or allowedCompanyPhones.","2":"All company email accounts or phone numbers can be used."}},"bottom_menu_layout":{"type":"object","description":"The role's Navigation list as one tree: top-level rows in the role's default bottom menu order, where a group row (kind Section: Communication, Analytics, Archive, Tools or a custom section) carries its member items. Stored as the client sent it; until it is saved once the default list is returned, everything enabled and pinned. The access_* flags of the role are not touched by it: the client sends both."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"allowed_pipelines":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedPipeline record."}},"description":"Related AllowedPipeline record; see 'createAllowedPipelineInput' for its fields."},"description":"Pipelines this user role can use. Effective only when access_entity_pipeline is set to Selected; with All-* values every pipeline is granted."},"allowed_lead_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedLeadType record."}},"description":"Related AllowedLeadType record; see 'createAllowedLeadTypeInput' for its fields."},"description":"Lead types this user role can use. Effective only when access_entity_lead_types is set to Selected."},"allowed_quote_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedQuoteType record."}},"description":"Related AllowedQuoteType record; see 'createAllowedQuoteTypeInput' for its fields."},"description":"Quote types this user role can use. Effective only when access_entity_quote_types is set to Selected."},"allowed_account_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedAccountType record."}},"description":"Related AllowedAccountType record; see 'createAllowedAccountTypeInput' for its fields."},"description":"Account types this user role can use. Effective only when access_entity_account_types is set to Selected."},"allowed_contact_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedContactType record."}},"description":"Related AllowedContactType record; see 'createAllowedContactTypeInput' for its fields."},"description":"Contact types this user role can use. Effective only when access_entity_contact_types is set to Selected."},"allowed_task_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedTaskType record."}},"description":"Related AllowedTaskType record; see 'createAllowedTaskTypeInput' for its fields."},"description":"Task types this user role can use. Effective only when access_entity_task_types is set to Selected."},"allowed_appointment_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedAppointmentType record."}},"description":"Related AllowedAppointmentType record; see 'createAllowedAppointmentTypeInput' for its fields."},"description":"Appointment types this user role can use. Effective only when access_entity_appointment_types is set to Selected. The recurrent appointment type is always granted implicitly and cannot be stored here."},"allowed_company_emails":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedCompanyEmail record."}},"description":"Related AllowedCompanyEmail record; see 'createAllowedCompanyEmailInput' for its fields."},"description":"Company email addresses this user role can send from. Effective only when access_company_emails is set to Selected."},"allowed_company_phones":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedCompanyPhone record."}},"description":"Related AllowedCompanyPhone record; see 'createAllowedCompanyPhoneInput' for its fields."},"description":"Company phones this user role can use for calling/SMS. Effective only when access_calling_company_phone is set to Selected."},"custom_entities":{"type":"string","format":"binary","example":"blob","description":"Per-custom-entity access settings (access level, allowed types, default screen profile, etc.) for users with this role. One entry per custom entity defined in the space."}},"required":["name"]},"updateMasterRightInput":{"description":"Field values to change on a MasterRight record; fields left out keep their values.","properties":{"access_account_relation_types":{"type":"boolean","example":false,"description":"Allows users with this role to manage account hierarchy types, account and contact relation types and account roles in Administration."},"access_accounts":{"type":"boolean","example":false,"description":"Shows the Accounts screen to users with this role. Which accounts they can see and edit is set by access_entity_account."},"access_ai_automatizer":{"type":"boolean","example":false,"description":"Allows users with this role to use the AI assistant that builds and describes automation processes, when the feature is enabled for the space."},"access_ai_online_forms":{"type":"boolean","example":false,"description":"Allows users with this role to use the AI assistant that creates online forms, when the feature is enabled for the space."},"access_ai_record_detail":{"type":"boolean","example":false,"description":"Allows users with this role to use AI summaries and suggested actions on record detail screens, when the feature is enabled for the space."},"access_ai_record_enrichment":{"type":"boolean","example":false,"description":"Allows users with this role to use AI to prefill new accounts, contacts and leads from an email, when the feature is enabled for the space."},"access_ai_relationship_charts":{"type":"boolean","example":false,"description":"Allows users with this role to use AI-suggested org charts and account hierarchies, when the feature is enabled for the space."},"access_ai_reports":{"type":"boolean","example":false,"description":"Allows users with this role to use the AI assistant that builds reports, when the feature is enabled for the space."},"access_ai_smart_field":{"type":"boolean","example":false,"description":"Allows users with this role to use AI smart fields, whose values are generated by AI, when the feature is enabled for the space."},"access_appointment_scheduler":{"type":"boolean","example":false,"description":"Allows users with this role to publish appointment schedules that let others book meetings with them, when the feature is enabled for the space. Turning it off disables the schedules of the users with this role."},"access_appointment_scheduler_management":{"type":"boolean","example":false,"description":"Allows users with this role to manage appointment schedules of other users."},"access_approval_processes":{"type":"boolean","example":false,"description":"Allows users with this role to create approval processes and manage their own, when approval processes are enabled for the space."},"access_approval_processes_management":{"type":"boolean","example":false,"description":"Allows users with this role to manage approval processes owned by other users."},"access_approvals":{"type":"boolean","example":false,"description":"Allows users with this role to open the Approvals screen and act on approval requests, when approval processes are enabled for the space."},"access_archive":{"type":"boolean","example":false,"description":"Allows users with this role to open the Archive screens listing lost, closed and archived records."},"access_audit":{"type":"boolean","example":false,"description":"Allows users with this role to open the Audit screen."},"access_audit_log":{"type":"boolean","example":false,"description":"Allows users with this role to view the audit log of changes made in the space."},"access_bottom_menu_customization":{"type":"boolean","example":false,"description":"Whether users with this role may reorder and pin their own bottom menu (\"Users can customize the bar\"). Off by default: users get the layout set in bottom_menu_layout; a layout of their own (UISettings.bottom_menu_layout) is still stored but read as null until this is switched on."},"access_bulk_update":{"type":"boolean","example":false,"description":"Allows users with this role to update many records at once with bulk update."},"access_calling":{"type":"boolean","example":false,"description":"Allows users with this role to make calls through the calling integration, when the feature is enabled for the space."},"access_calling_company_phone":{"type":"integer","description":"Which company phone numbers users with this role can use for calls and text messages: none (NoAccess), those in allowed_company_phones (Selected) or all (All).\n\nInteger enum value: 0 - NoAccess, 1 - Selected, 2 - All","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"None can be used.","1":"Only those listed in the role's allowedCompanyEmails or allowedCompanyPhones.","2":"All company email accounts or phone numbers can be used."}},"access_calling_purchase_phone":{"type":"boolean","example":false,"description":"Allows users with this role to purchase and manage company phone numbers for the calling integration."},"access_company_emails":{"type":"integer","description":"Which shared company email accounts users with this role can send from: none (NoAccess), those in allowed_company_emails (Selected) or all (All).\n\nInteger enum value: 0 - NoAccess, 1 - Selected, 2 - All","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"None can be used.","1":"Only those listed in the role's allowedCompanyEmails or allowedCompanyPhones.","2":"All company email accounts or phone numbers can be used."}},"access_contacts":{"type":"boolean","example":false,"description":"Shows the Contacts screen to users with this role. Which contacts they can see and edit is set by access_entity_contact."},"access_document_management":{"type":"boolean","example":false,"description":"Allows users with this role to browse and work with documents in the Document Manager, when the feature is enabled for the space."},"access_document_management_company":{"type":"boolean","example":false,"description":"Allows users with this role to manage company documents and folders that are not tied to a record."},"access_document_management_record":{"type":"boolean","example":false,"description":"Allows users with this role to create and edit the document folders used for records."},"access_duplicate_checker":{"type":"boolean","example":false,"description":"Allows users with this role to use the duplicate checker to find duplicate records, when the feature is enabled for the space."},"access_email_notification_enforcement":{"type":"boolean","example":false,"description":"When true, users with this role get the email notification preferences from access_email_notification_settings and cannot change their own."},"access_email_notification_settings":{"type":"object","description":"Default email notification preferences applied to users with this role (which events trigger an email and through which channel)."},"access_entity_account":{"type":"integer","description":"Level of access to accounts for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the accounts the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_account_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing accounts."},"access_entity_account_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete accounts they can edit."},"access_entity_account_direction":{"type":"integer","description":"Which accounts users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_account_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private accounts, which are visible only to their owner."},"access_entity_account_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for accounts."},"access_entity_account_types":{"type":"integer","description":"Whether users with this role can work with all account types (All) or only with those in allowed_account_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_appointment":{"type":"integer","description":"Level of access to appointments for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the appointments the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_appointment_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete appointments they can edit."},"access_entity_appointment_direction":{"type":"integer","description":"Which appointments users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_appointment_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for appointments."},"access_entity_appointment_types":{"type":"integer","description":"Whether users with this role can work with all appointment types (All) or only with those in allowed_appointment_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_better_navigator":{"type":"integer","description":"Level of access to Navigator screen layouts for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_better_navigator_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete Navigator screen layouts owned by other users."},"access_entity_better_navigator_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete Navigator screen layouts they own."},"access_entity_better_navigator_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their Navigator screen layouts with selected users and sales units."},"access_entity_better_navigator_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their Navigator screen layouts with all users of the space."},"access_entity_contact":{"type":"integer","description":"Level of access to contacts for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the contacts the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_contact_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing contacts."},"access_entity_contact_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete contacts they can edit."},"access_entity_contact_direction":{"type":"integer","description":"Which contacts users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_contact_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private contacts, which are visible only to their owner."},"access_entity_contact_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for contacts."},"access_entity_contact_types":{"type":"integer","description":"Whether users with this role can work with all contact types (All) or only with those in allowed_contact_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_dashboard":{"type":"integer","description":"Level of access to dashboards for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All). Dashboards are unavailable while access_entity_report is NoAccess.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_dashboard_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete dashboards owned by other users."},"access_entity_dashboard_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete dashboards they own."},"access_entity_dashboard_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their dashboards with selected users and sales units."},"access_entity_dashboard_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their dashboards with all users of the space."},"access_entity_email_access_level":{"type":"integer","description":"Which emails users with this role see on records, reports, feeds and automation. Default: any email linked to a record the user can see. UsersAndSalesUnits: only emails owned by or shared by users / sales unit members in access_entity_email_allowed (own and shared-with-me emails always stay visible). The Inbox is not affected.\n\nInteger enum value: 0 - Default, 1 - UsersAndSalesUnits","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"Every email linked to a record the user can see.","1":"Only emails owned or shared by the users and sales unit members in accessEntityEmailAllowed, plus the user's own emails and emails shared with them."}},"access_entity_email_allowed":{"type":"object","description":"Allow-list for access_entity_email_access_level = UsersAndSalesUnits: users and sales units (their Member users) whose emails stay visible. Kept when switching back to Default."},"access_entity_email_content_share_mode":{"type":"integer","description":"How users with this role can share the body of their emails: always private (PrivateOnly), always public (PublicOnly) or chosen per email (Custom).\n\nInteger enum value: 0 - PrivateOnly, 1 - Custom, 2 - PublicOnly","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Email bodies are always private.","1":"Users choose per email, starting from their default in emailDefaultContentSharingMode.","2":"Email bodies are always public."}},"access_entity_email_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete emails they neither own nor sent."},"access_entity_email_link_to_accounts":{"type":"integer","description":"Whether the email integration of users with this role links emails to the accounts of their recipients. Custom leaves it to each user's own email settings.\n\nInteger enum value: 0 - Custom, 1 - On, 2 - Off","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Each user's own setting applies.","1":"The setting is on for every user with the role.","2":"The setting is off for every user with the role."}},"access_entity_email_link_to_accounts_by_domain":{"type":"integer","description":"Whether the email integration of users with this role links emails to accounts whose website domain matches a recipient's email domain. Custom leaves it to each user's own email settings.\n\nInteger enum value: 0 - Custom, 1 - On, 2 - Off","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Each user's own setting applies.","1":"The setting is on for every user with the role.","2":"The setting is off for every user with the role."}},"access_entity_email_link_to_contacts":{"type":"integer","description":"Whether the email integration of users with this role links emails to the contacts of their recipients. Custom leaves it to each user's own email settings.\n\nInteger enum value: 0 - Custom, 1 - On, 2 - Off","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Each user's own setting applies.","1":"The setting is on for every user with the role.","2":"The setting is off for every user with the role."}},"access_entity_email_sequence":{"type":"integer","description":"Level of access to email sequences for users with this role, when email sequences are enabled for the space: none (NoAccess), only their own (Personal) or all (FullAccess).\n\nInteger enum value: 1 - FullAccess, 2 - Personal, 3 - NoAccess","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The user can view and manage all email sequences.","2":"The user can view and manage only their own personal email sequences.","3":"Email sequences are not available to the user."}},"access_entity_email_template":{"type":"integer","description":"Level of access to email templates for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_email_template_create_delete_folder":{"type":"boolean","example":false,"description":"Allows users with this role to create and delete email template folders."},"access_entity_email_template_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete email templates owned by other users."},"access_entity_email_template_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete email templates they own."},"access_entity_email_template_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their email templates with selected users and sales units."},"access_entity_email_template_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their email templates with all users of the space."},"access_entity_forecast":{"type":"integer","description":"Level of access to forecasts for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_forecast_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete forecasts owned by other users."},"access_entity_forecast_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete forecasts they own."},"access_entity_forecast_edit_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to edit forecasts owned by other users."},"access_entity_forecast_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their forecasts with selected users and sales units."},"access_entity_forecast_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their forecasts with all users of the space."},"access_entity_form_view":{"type":"integer","description":"Level of access to form views for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_form_view_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete form views owned by other users."},"access_entity_form_view_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete form views they own."},"access_entity_form_view_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their form views with selected users and sales units."},"access_entity_form_view_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their form views with all users of the space."},"access_entity_lead":{"type":"integer","description":"Level of access to leads for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the leads the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_lead_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing leads."},"access_entity_lead_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete leads they can edit."},"access_entity_lead_direction":{"type":"integer","description":"Which leads users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_lead_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private leads, which are visible only to their owner."},"access_entity_lead_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for leads."},"access_entity_lead_types":{"type":"integer","description":"Whether users with this role can work with all lead types (All) or only with those in allowed_lead_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_message_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for emails, memos and text messages."},"access_entity_oppty":{"type":"integer","description":"Level of access to opportunities for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the opportunities the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_oppty_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing opportunities."},"access_entity_oppty_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete opportunities they can edit."},"access_entity_oppty_direction":{"type":"integer","description":"Which opportunities users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_oppty_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private opportunities, which are visible only to their owner."},"access_entity_oppty_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for opportunities."},"access_entity_pipeline":{"type":"integer","description":"Which pipelines users with this role can work with: none (NoPipeline), those in allowed_pipelines (Selected), or all with or without access to pipeline step documents (AllWithDocuments, AllNoDocuments).\n\nInteger enum value: 0 - NoPipeline, 1 - Selected, 2 - AllNoDocuments, 3 - AllWithDocuments","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"No pipelines are available to the user.","1":"Only the pipelines listed in the role's allowedPipelines, each with its own step document access.","2":"All pipelines, without access to documents attached to pipeline steps.","3":"All pipelines, including documents attached to pipeline steps."}},"access_entity_process":{"type":"integer","description":"Level of access to automation processes for users with this role, when process automation is enabled for the space: none (NoAccess), only their own (Personal) or all (FullAccess).\n\nInteger enum value: 1 - FullAccess, 2 - Personal, 3 - NoAccess","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The user can view and manage all processes.","2":"The user can view and manage only their own personal processes; space processes cannot be changed.","3":"Processes are not available to the user."}},"access_entity_profile":{"type":"integer","description":"Level of access to screen profiles (saved screen views) for users with this role: use of those shared with them (Readonly) or also creating their own (All). NoAccess is rejected.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_profile_default_screen_profiles":{"type":"object","description":"Default screen profile ids assigned to users with this role for each main screen (Navigator, Pipeline, Lead, Account, Contact, Activity, Project, Quote, etc.)."},"access_entity_profile_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete screen profiles owned by other users."},"access_entity_profile_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete screen profiles they own."},"access_entity_profile_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their screen profiles with selected users and sales units."},"access_entity_profile_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their screen profiles with all users of the space."},"access_entity_project":{"type":"integer","description":"Level of access to projects for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the projects the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_project_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing projects."},"access_entity_project_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete projects they can edit."},"access_entity_project_direction":{"type":"integer","description":"Which projects users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_project_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private projects, which are visible only to their owner."},"access_entity_project_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for projects."},"access_entity_quote":{"type":"integer","description":"Level of access to quotes for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the quotes the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_quote_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing quotes."},"access_entity_quote_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete quotes they can edit."},"access_entity_quote_direction":{"type":"integer","description":"Which quotes users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_quote_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for quotes."},"access_entity_quote_types":{"type":"integer","description":"Whether users with this role can work with all quote types (All) or only with those in allowed_quote_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_report":{"type":"integer","description":"Level of access to reports for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_report_create_delete_folder":{"type":"boolean","example":false,"description":"Allows users with this role to create and delete report folders."},"access_entity_report_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete reports owned by other users."},"access_entity_report_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete reports they own."},"access_entity_report_private":{"type":"boolean","example":false,"description":"Allows users with this role to save reports as private, visible only to themselves."},"access_entity_report_schedule_create":{"type":"boolean","example":false,"description":"Allows users with this role to schedule reports for regular delivery."},"access_entity_report_schedule_management":{"type":"boolean","example":false,"description":"Allows users with this role to view and manage report schedules of other users."},"access_entity_report_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their reports with selected users and sales units."},"access_entity_report_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their reports with all users of the space."},"access_entity_solution":{"type":"boolean","example":false,"description":"Allows users with this role to view and follow solutions, when the feature is enabled for the space."},"access_entity_solution_management":{"type":"boolean","example":false,"description":"Allows users with this role to create, edit and delete solutions."},"access_entity_target":{"type":"integer","description":"Level of access to targets for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_target_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete targets owned by other users."},"access_entity_target_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete targets they own."},"access_entity_task":{"type":"integer","description":"Level of access to tasks for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the tasks the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_task_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete tasks they can edit."},"access_entity_task_direction":{"type":"integer","description":"Which tasks users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_task_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for tasks."},"access_entity_task_types":{"type":"integer","description":"Whether users with this role can work with all task types (All) or only with those in allowed_task_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_task_unassigned":{"type":"boolean","example":false,"description":"Allows users with this role to create tasks without an owner (unassigned tasks)."},"access_export":{"type":"boolean","example":false,"description":"Allows users with this role to export records and reports to files."},"access_feeds":{"type":"boolean","example":false,"description":"Allows users with this role to open the Feed screen with the stream of activities, emails and other updates."},"access_foreign_currencies":{"type":"boolean","example":false,"description":"Allows users with this role to manage currencies and exchange rate lists in Administration."},"access_form_and_fields":{"type":"boolean","example":false,"description":"Allows users with this role to manage fields, forms, record types, tags and translations in Administration."},"access_global_settings":{"type":"boolean","example":false,"description":"Allows users with this role to manage the global settings of the space in Administration, including the Automation Hub and API access."},"access_home_screen":{"type":"boolean","example":false,"description":"Allows users with this role to open the Navigator screen."},"access_import":{"type":"boolean","example":false,"description":"Allows users with this role to import records from files."},"access_insights":{"type":"boolean","example":false,"description":"Allows users with this role to open the Insights area with sales performance, indicator, conversion and lifecycle overviews."},"access_leads":{"type":"boolean","example":false,"description":"Shows the Leads screen to users with this role. Which leads they can see and edit is set by access_entity_lead."},"access_online_forms":{"type":"boolean","example":false,"description":"Allows users with this role to create online forms and manage their own, when online forms are enabled for the space."},"access_online_forms_management":{"type":"boolean","example":false,"description":"Allows users with this role to edit and delete online forms owned by other users."},"access_opportunity":{"type":"boolean","example":false,"description":"Shows the Opportunities screen to users with this role. Which opportunities they can see and edit is set by access_entity_oppty."},"access_pipeline_configuration":{"type":"boolean","example":false,"description":"Allows users with this role to manage pipelines, lead processes and quote processes in Administration."},"access_print":{"type":"boolean","example":false,"description":"Allows users with this role to print records and reports."},"access_products_services":{"type":"boolean","example":false,"description":"Allows users with this role to manage products, product categories and price lists in Administration."},"access_projects":{"type":"boolean","example":false,"description":"Allows users with this role to use Projects, when the feature is enabled for the space. Which projects they can see and edit is set by access_entity_project."},"access_quotes":{"type":"boolean","example":false,"description":"Allows users with this role to use Quotes, when the feature is enabled for the space. Which quotes they can see and edit is set by access_entity_quote."},"access_sales_roles":{"type":"boolean","example":false,"description":"Allows users with this role to manage sales roles in Administration."},"access_security":{"type":"boolean","example":false,"description":"Allows users with this role to manage the security settings of the space in Administration."},"access_units":{"type":"boolean","example":false,"description":"Allows users with this role to manage sales units in Administration."},"access_user_and_roles":{"type":"boolean","example":false,"description":"Allows users with this role to manage users, user roles and sales unit membership in Administration. Cannot be turned off on the default administrator role."},"access_whats_app_company_phone":{"type":"integer","description":"Which company phone numbers users with this role can use for WhatsApp messages, when WhatsApp is enabled for the space: none (NoAccess), those in allowed_company_phones (Selected) or all (All).\n\nInteger enum value: 0 - NoAccess, 1 - Selected, 2 - All","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"None can be used.","1":"Only those listed in the role's allowedCompanyEmails or allowedCompanyPhones.","2":"All company email accounts or phone numbers can be used."}},"bottom_menu_layout":{"type":"object","description":"The role's Navigation list as one tree: top-level rows in the role's default bottom menu order, where a group row (kind Section: Communication, Analytics, Archive, Tools or a custom section) carries its member items. Stored as the client sent it; until it is saved once the default list is returned, everything enabled and pinned. The access_* flags of the role are not touched by it: the client sends both."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"allowed_pipelines":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedPipeline record."}},"description":"Related AllowedPipeline record; see 'updateAllowedPipelineInput' for its fields."},"description":"Pipelines this user role can use. Effective only when access_entity_pipeline is set to Selected; with All-* values every pipeline is granted."},"allowed_lead_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedLeadType record."}},"description":"Related AllowedLeadType record; see 'updateAllowedLeadTypeInput' for its fields."},"description":"Lead types this user role can use. Effective only when access_entity_lead_types is set to Selected."},"allowed_quote_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedQuoteType record."}},"description":"Related AllowedQuoteType record; see 'updateAllowedQuoteTypeInput' for its fields."},"description":"Quote types this user role can use. Effective only when access_entity_quote_types is set to Selected."},"allowed_account_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedAccountType record."}},"description":"Related AllowedAccountType record; see 'updateAllowedAccountTypeInput' for its fields."},"description":"Account types this user role can use. Effective only when access_entity_account_types is set to Selected."},"allowed_contact_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedContactType record."}},"description":"Related AllowedContactType record; see 'updateAllowedContactTypeInput' for its fields."},"description":"Contact types this user role can use. Effective only when access_entity_contact_types is set to Selected."},"allowed_task_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedTaskType record."}},"description":"Related AllowedTaskType record; see 'updateAllowedTaskTypeInput' for its fields."},"description":"Task types this user role can use. Effective only when access_entity_task_types is set to Selected."},"allowed_appointment_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedAppointmentType record."}},"description":"Related AllowedAppointmentType record; see 'updateAllowedAppointmentTypeInput' for its fields."},"description":"Appointment types this user role can use. Effective only when access_entity_appointment_types is set to Selected. The recurrent appointment type is always granted implicitly and cannot be stored here."},"allowed_company_emails":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedCompanyEmail record."}},"description":"Related AllowedCompanyEmail record; see 'updateAllowedCompanyEmailInput' for its fields."},"description":"Company email addresses this user role can send from. Effective only when access_company_emails is set to Selected."},"allowed_company_phones":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedCompanyPhone record."}},"description":"Related AllowedCompanyPhone record; see 'updateAllowedCompanyPhoneInput' for its fields."},"description":"Company phones this user role can use for calling/SMS. Effective only when access_calling_company_phone is set to Selected."},"custom_entities":{"type":"string","format":"binary","example":"blob","description":"Per-custom-entity access settings (access level, allowed types, default screen profile, etc.) for users with this role. One entry per custom entity defined in the space."}}},"batchMasterRightInput":{"description":"Field values of a MasterRight record to create, or to update when its id is set.","properties":{"access_account_relation_types":{"type":"boolean","example":false,"description":"Allows users with this role to manage account hierarchy types, account and contact relation types and account roles in Administration."},"access_accounts":{"type":"boolean","example":false,"description":"Shows the Accounts screen to users with this role. Which accounts they can see and edit is set by access_entity_account."},"access_ai_automatizer":{"type":"boolean","example":false,"description":"Allows users with this role to use the AI assistant that builds and describes automation processes, when the feature is enabled for the space."},"access_ai_online_forms":{"type":"boolean","example":false,"description":"Allows users with this role to use the AI assistant that creates online forms, when the feature is enabled for the space."},"access_ai_record_detail":{"type":"boolean","example":false,"description":"Allows users with this role to use AI summaries and suggested actions on record detail screens, when the feature is enabled for the space."},"access_ai_record_enrichment":{"type":"boolean","example":false,"description":"Allows users with this role to use AI to prefill new accounts, contacts and leads from an email, when the feature is enabled for the space."},"access_ai_relationship_charts":{"type":"boolean","example":false,"description":"Allows users with this role to use AI-suggested org charts and account hierarchies, when the feature is enabled for the space."},"access_ai_reports":{"type":"boolean","example":false,"description":"Allows users with this role to use the AI assistant that builds reports, when the feature is enabled for the space."},"access_ai_smart_field":{"type":"boolean","example":false,"description":"Allows users with this role to use AI smart fields, whose values are generated by AI, when the feature is enabled for the space."},"access_appointment_scheduler":{"type":"boolean","example":false,"description":"Allows users with this role to publish appointment schedules that let others book meetings with them, when the feature is enabled for the space. Turning it off disables the schedules of the users with this role."},"access_appointment_scheduler_management":{"type":"boolean","example":false,"description":"Allows users with this role to manage appointment schedules of other users."},"access_approval_processes":{"type":"boolean","example":false,"description":"Allows users with this role to create approval processes and manage their own, when approval processes are enabled for the space."},"access_approval_processes_management":{"type":"boolean","example":false,"description":"Allows users with this role to manage approval processes owned by other users."},"access_approvals":{"type":"boolean","example":false,"description":"Allows users with this role to open the Approvals screen and act on approval requests, when approval processes are enabled for the space."},"access_archive":{"type":"boolean","example":false,"description":"Allows users with this role to open the Archive screens listing lost, closed and archived records."},"access_audit":{"type":"boolean","example":false,"description":"Allows users with this role to open the Audit screen."},"access_audit_log":{"type":"boolean","example":false,"description":"Allows users with this role to view the audit log of changes made in the space."},"access_bottom_menu_customization":{"type":"boolean","example":false,"description":"Whether users with this role may reorder and pin their own bottom menu (\"Users can customize the bar\"). Off by default: users get the layout set in bottom_menu_layout; a layout of their own (UISettings.bottom_menu_layout) is still stored but read as null until this is switched on."},"access_bulk_update":{"type":"boolean","example":false,"description":"Allows users with this role to update many records at once with bulk update."},"access_calling":{"type":"boolean","example":false,"description":"Allows users with this role to make calls through the calling integration, when the feature is enabled for the space."},"access_calling_company_phone":{"type":"integer","description":"Which company phone numbers users with this role can use for calls and text messages: none (NoAccess), those in allowed_company_phones (Selected) or all (All).\n\nInteger enum value: 0 - NoAccess, 1 - Selected, 2 - All","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"None can be used.","1":"Only those listed in the role's allowedCompanyEmails or allowedCompanyPhones.","2":"All company email accounts or phone numbers can be used."}},"access_calling_purchase_phone":{"type":"boolean","example":false,"description":"Allows users with this role to purchase and manage company phone numbers for the calling integration."},"access_company_emails":{"type":"integer","description":"Which shared company email accounts users with this role can send from: none (NoAccess), those in allowed_company_emails (Selected) or all (All).\n\nInteger enum value: 0 - NoAccess, 1 - Selected, 2 - All","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"None can be used.","1":"Only those listed in the role's allowedCompanyEmails or allowedCompanyPhones.","2":"All company email accounts or phone numbers can be used."}},"access_contacts":{"type":"boolean","example":false,"description":"Shows the Contacts screen to users with this role. Which contacts they can see and edit is set by access_entity_contact."},"access_document_management":{"type":"boolean","example":false,"description":"Allows users with this role to browse and work with documents in the Document Manager, when the feature is enabled for the space."},"access_document_management_company":{"type":"boolean","example":false,"description":"Allows users with this role to manage company documents and folders that are not tied to a record."},"access_document_management_record":{"type":"boolean","example":false,"description":"Allows users with this role to create and edit the document folders used for records."},"access_duplicate_checker":{"type":"boolean","example":false,"description":"Allows users with this role to use the duplicate checker to find duplicate records, when the feature is enabled for the space."},"access_email_notification_enforcement":{"type":"boolean","example":false,"description":"When true, users with this role get the email notification preferences from access_email_notification_settings and cannot change their own."},"access_email_notification_settings":{"type":"object","description":"Default email notification preferences applied to users with this role (which events trigger an email and through which channel)."},"access_entity_account":{"type":"integer","description":"Level of access to accounts for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the accounts the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_account_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing accounts."},"access_entity_account_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete accounts they can edit."},"access_entity_account_direction":{"type":"integer","description":"Which accounts users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_account_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private accounts, which are visible only to their owner."},"access_entity_account_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for accounts."},"access_entity_account_types":{"type":"integer","description":"Whether users with this role can work with all account types (All) or only with those in allowed_account_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_appointment":{"type":"integer","description":"Level of access to appointments for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the appointments the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_appointment_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete appointments they can edit."},"access_entity_appointment_direction":{"type":"integer","description":"Which appointments users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_appointment_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for appointments."},"access_entity_appointment_types":{"type":"integer","description":"Whether users with this role can work with all appointment types (All) or only with those in allowed_appointment_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_better_navigator":{"type":"integer","description":"Level of access to Navigator screen layouts for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_better_navigator_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete Navigator screen layouts owned by other users."},"access_entity_better_navigator_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete Navigator screen layouts they own."},"access_entity_better_navigator_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their Navigator screen layouts with selected users and sales units."},"access_entity_better_navigator_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their Navigator screen layouts with all users of the space."},"access_entity_contact":{"type":"integer","description":"Level of access to contacts for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the contacts the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_contact_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing contacts."},"access_entity_contact_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete contacts they can edit."},"access_entity_contact_direction":{"type":"integer","description":"Which contacts users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_contact_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private contacts, which are visible only to their owner."},"access_entity_contact_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for contacts."},"access_entity_contact_types":{"type":"integer","description":"Whether users with this role can work with all contact types (All) or only with those in allowed_contact_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_dashboard":{"type":"integer","description":"Level of access to dashboards for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All). Dashboards are unavailable while access_entity_report is NoAccess.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_dashboard_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete dashboards owned by other users."},"access_entity_dashboard_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete dashboards they own."},"access_entity_dashboard_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their dashboards with selected users and sales units."},"access_entity_dashboard_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their dashboards with all users of the space."},"access_entity_email_access_level":{"type":"integer","description":"Which emails users with this role see on records, reports, feeds and automation. Default: any email linked to a record the user can see. UsersAndSalesUnits: only emails owned by or shared by users / sales unit members in access_entity_email_allowed (own and shared-with-me emails always stay visible). The Inbox is not affected.\n\nInteger enum value: 0 - Default, 1 - UsersAndSalesUnits","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"Every email linked to a record the user can see.","1":"Only emails owned or shared by the users and sales unit members in accessEntityEmailAllowed, plus the user's own emails and emails shared with them."}},"access_entity_email_allowed":{"type":"object","description":"Allow-list for access_entity_email_access_level = UsersAndSalesUnits: users and sales units (their Member users) whose emails stay visible. Kept when switching back to Default."},"access_entity_email_content_share_mode":{"type":"integer","description":"How users with this role can share the body of their emails: always private (PrivateOnly), always public (PublicOnly) or chosen per email (Custom).\n\nInteger enum value: 0 - PrivateOnly, 1 - Custom, 2 - PublicOnly","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Email bodies are always private.","1":"Users choose per email, starting from their default in emailDefaultContentSharingMode.","2":"Email bodies are always public."}},"access_entity_email_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete emails they neither own nor sent."},"access_entity_email_link_to_accounts":{"type":"integer","description":"Whether the email integration of users with this role links emails to the accounts of their recipients. Custom leaves it to each user's own email settings.\n\nInteger enum value: 0 - Custom, 1 - On, 2 - Off","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Each user's own setting applies.","1":"The setting is on for every user with the role.","2":"The setting is off for every user with the role."}},"access_entity_email_link_to_accounts_by_domain":{"type":"integer","description":"Whether the email integration of users with this role links emails to accounts whose website domain matches a recipient's email domain. Custom leaves it to each user's own email settings.\n\nInteger enum value: 0 - Custom, 1 - On, 2 - Off","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Each user's own setting applies.","1":"The setting is on for every user with the role.","2":"The setting is off for every user with the role."}},"access_entity_email_link_to_contacts":{"type":"integer","description":"Whether the email integration of users with this role links emails to the contacts of their recipients. Custom leaves it to each user's own email settings.\n\nInteger enum value: 0 - Custom, 1 - On, 2 - Off","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"Each user's own setting applies.","1":"The setting is on for every user with the role.","2":"The setting is off for every user with the role."}},"access_entity_email_sequence":{"type":"integer","description":"Level of access to email sequences for users with this role, when email sequences are enabled for the space: none (NoAccess), only their own (Personal) or all (FullAccess).\n\nInteger enum value: 1 - FullAccess, 2 - Personal, 3 - NoAccess","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The user can view and manage all email sequences.","2":"The user can view and manage only their own personal email sequences.","3":"Email sequences are not available to the user."}},"access_entity_email_template":{"type":"integer","description":"Level of access to email templates for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_email_template_create_delete_folder":{"type":"boolean","example":false,"description":"Allows users with this role to create and delete email template folders."},"access_entity_email_template_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete email templates owned by other users."},"access_entity_email_template_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete email templates they own."},"access_entity_email_template_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their email templates with selected users and sales units."},"access_entity_email_template_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their email templates with all users of the space."},"access_entity_forecast":{"type":"integer","description":"Level of access to forecasts for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_forecast_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete forecasts owned by other users."},"access_entity_forecast_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete forecasts they own."},"access_entity_forecast_edit_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to edit forecasts owned by other users."},"access_entity_forecast_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their forecasts with selected users and sales units."},"access_entity_forecast_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their forecasts with all users of the space."},"access_entity_form_view":{"type":"integer","description":"Level of access to form views for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_form_view_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete form views owned by other users."},"access_entity_form_view_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete form views they own."},"access_entity_form_view_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their form views with selected users and sales units."},"access_entity_form_view_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their form views with all users of the space."},"access_entity_lead":{"type":"integer","description":"Level of access to leads for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the leads the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_lead_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing leads."},"access_entity_lead_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete leads they can edit."},"access_entity_lead_direction":{"type":"integer","description":"Which leads users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_lead_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private leads, which are visible only to their owner."},"access_entity_lead_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for leads."},"access_entity_lead_types":{"type":"integer","description":"Whether users with this role can work with all lead types (All) or only with those in allowed_lead_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_message_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for emails, memos and text messages."},"access_entity_oppty":{"type":"integer","description":"Level of access to opportunities for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the opportunities the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_oppty_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing opportunities."},"access_entity_oppty_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete opportunities they can edit."},"access_entity_oppty_direction":{"type":"integer","description":"Which opportunities users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_oppty_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private opportunities, which are visible only to their owner."},"access_entity_oppty_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for opportunities."},"access_entity_pipeline":{"type":"integer","description":"Which pipelines users with this role can work with: none (NoPipeline), those in allowed_pipelines (Selected), or all with or without access to pipeline step documents (AllWithDocuments, AllNoDocuments).\n\nInteger enum value: 0 - NoPipeline, 1 - Selected, 2 - AllNoDocuments, 3 - AllWithDocuments","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"No pipelines are available to the user.","1":"Only the pipelines listed in the role's allowedPipelines, each with its own step document access.","2":"All pipelines, without access to documents attached to pipeline steps.","3":"All pipelines, including documents attached to pipeline steps."}},"access_entity_process":{"type":"integer","description":"Level of access to automation processes for users with this role, when process automation is enabled for the space: none (NoAccess), only their own (Personal) or all (FullAccess).\n\nInteger enum value: 1 - FullAccess, 2 - Personal, 3 - NoAccess","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The user can view and manage all processes.","2":"The user can view and manage only their own personal processes; space processes cannot be changed.","3":"Processes are not available to the user."}},"access_entity_profile":{"type":"integer","description":"Level of access to screen profiles (saved screen views) for users with this role: use of those shared with them (Readonly) or also creating their own (All). NoAccess is rejected.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_profile_default_screen_profiles":{"type":"object","description":"Default screen profile ids assigned to users with this role for each main screen (Navigator, Pipeline, Lead, Account, Contact, Activity, Project, Quote, etc.)."},"access_entity_profile_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete screen profiles owned by other users."},"access_entity_profile_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete screen profiles they own."},"access_entity_profile_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their screen profiles with selected users and sales units."},"access_entity_profile_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their screen profiles with all users of the space."},"access_entity_project":{"type":"integer","description":"Level of access to projects for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the projects the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_project_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing projects."},"access_entity_project_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete projects they can edit."},"access_entity_project_direction":{"type":"integer","description":"Which projects users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_project_private":{"type":"boolean","example":false,"description":"Allows users with this role to own private projects, which are visible only to their owner."},"access_entity_project_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for projects."},"access_entity_quote":{"type":"integer","description":"Level of access to quotes for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the quotes the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_quote_copy":{"type":"boolean","example":false,"description":"Allows users with this role to create copies of existing quotes."},"access_entity_quote_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete quotes they can edit."},"access_entity_quote_direction":{"type":"integer","description":"Which quotes users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_quote_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for quotes."},"access_entity_quote_types":{"type":"integer","description":"Whether users with this role can work with all quote types (All) or only with those in allowed_quote_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_report":{"type":"integer","description":"Level of access to reports for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_report_create_delete_folder":{"type":"boolean","example":false,"description":"Allows users with this role to create and delete report folders."},"access_entity_report_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete reports owned by other users."},"access_entity_report_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete reports they own."},"access_entity_report_private":{"type":"boolean","example":false,"description":"Allows users with this role to save reports as private, visible only to themselves."},"access_entity_report_schedule_create":{"type":"boolean","example":false,"description":"Allows users with this role to schedule reports for regular delivery."},"access_entity_report_schedule_management":{"type":"boolean","example":false,"description":"Allows users with this role to view and manage report schedules of other users."},"access_entity_report_sharing_custom":{"type":"boolean","example":false,"description":"Allows users with this role to share their reports with selected users and sales units."},"access_entity_report_sharing_public":{"type":"boolean","example":false,"description":"Allows users with this role to share their reports with all users of the space."},"access_entity_solution":{"type":"boolean","example":false,"description":"Allows users with this role to view and follow solutions, when the feature is enabled for the space."},"access_entity_solution_management":{"type":"boolean","example":false,"description":"Allows users with this role to create, edit and delete solutions."},"access_entity_target":{"type":"integer","description":"Level of access to targets for users with this role: not available (NoAccess), use of those shared with them (Readonly), or also creating their own (All).\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 4 - All","example":0,"enum":[0,1,4],"x-enumDescriptions":{"0":"The feature is not available to the user.","1":"The user can use items shared with them but cannot create their own.","4":"The user can create and manage their own items and use items shared with them."}},"access_entity_target_delete_not_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete targets owned by other users."},"access_entity_target_delete_owned":{"type":"boolean","example":false,"description":"Allows users with this role to delete targets they own."},"access_entity_task":{"type":"integer","description":"Level of access to tasks for users with this role, from NoAccess and Readonly to Editor, EditorOrUnitManger and All. Applies to the tasks the role can see.\n\nInteger enum value: 0 - NoAccess, 1 - Readonly, 2 - Editor, 3 - EditorOrUnitManger, 4 - All","example":0,"enum":[0,1,2,3,4],"x-enumDescriptions":{"0":"The record type is not available to the user.","1":"The user can view records but cannot create or edit them.","2":"The user can create records and edit records they own or that are shared with them for editing.","3":"Same as Editor, and the user can also edit records of the sales units they manage.","4":"The user can edit all records they can see."}},"access_entity_task_delete":{"type":"boolean","example":false,"description":"Allows users with this role to delete tasks they can edit."},"access_entity_task_direction":{"type":"integer","description":"Which tasks users with this role can see besides those they own or that are shared with them: no others (Owned), those of their sales units (Current and its variants) or all (All).\n\nInteger enum value: 1 - Owned, 2 - Current, 3 - CurrentAndParent, 4 - CurrentAndSubunit, 5 - CurrentAndParentAndSubunit, 6 - All","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Only records the user owns or that are shared with them.","2":"Also records of the sales units the user is a member of.","3":"Also records of the user's sales units and their parent units.","4":"Also records of the user's sales units and their subunits.","5":"Also records of the user's sales units, their parent units and their subunits.","6":"Records of all sales units."}},"access_entity_task_tag_create":{"type":"boolean","example":false,"description":"Allows users with this role to create new tags for tasks."},"access_entity_task_types":{"type":"integer","description":"Whether users with this role can work with all task types (All) or only with those in allowed_task_types (Selected).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The role can work with records of every type of the entity.","2":"The role can work only with records of the types explicitly allowed for it; with none allowed, no type is available."}},"access_entity_task_unassigned":{"type":"boolean","example":false,"description":"Allows users with this role to create tasks without an owner (unassigned tasks)."},"access_export":{"type":"boolean","example":false,"description":"Allows users with this role to export records and reports to files."},"access_feeds":{"type":"boolean","example":false,"description":"Allows users with this role to open the Feed screen with the stream of activities, emails and other updates."},"access_foreign_currencies":{"type":"boolean","example":false,"description":"Allows users with this role to manage currencies and exchange rate lists in Administration."},"access_form_and_fields":{"type":"boolean","example":false,"description":"Allows users with this role to manage fields, forms, record types, tags and translations in Administration."},"access_global_settings":{"type":"boolean","example":false,"description":"Allows users with this role to manage the global settings of the space in Administration, including the Automation Hub and API access."},"access_home_screen":{"type":"boolean","example":false,"description":"Allows users with this role to open the Navigator screen."},"access_import":{"type":"boolean","example":false,"description":"Allows users with this role to import records from files."},"access_insights":{"type":"boolean","example":false,"description":"Allows users with this role to open the Insights area with sales performance, indicator, conversion and lifecycle overviews."},"access_leads":{"type":"boolean","example":false,"description":"Shows the Leads screen to users with this role. Which leads they can see and edit is set by access_entity_lead."},"access_online_forms":{"type":"boolean","example":false,"description":"Allows users with this role to create online forms and manage their own, when online forms are enabled for the space."},"access_online_forms_management":{"type":"boolean","example":false,"description":"Allows users with this role to edit and delete online forms owned by other users."},"access_opportunity":{"type":"boolean","example":false,"description":"Shows the Opportunities screen to users with this role. Which opportunities they can see and edit is set by access_entity_oppty."},"access_pipeline_configuration":{"type":"boolean","example":false,"description":"Allows users with this role to manage pipelines, lead processes and quote processes in Administration."},"access_print":{"type":"boolean","example":false,"description":"Allows users with this role to print records and reports."},"access_products_services":{"type":"boolean","example":false,"description":"Allows users with this role to manage products, product categories and price lists in Administration."},"access_projects":{"type":"boolean","example":false,"description":"Allows users with this role to use Projects, when the feature is enabled for the space. Which projects they can see and edit is set by access_entity_project."},"access_quotes":{"type":"boolean","example":false,"description":"Allows users with this role to use Quotes, when the feature is enabled for the space. Which quotes they can see and edit is set by access_entity_quote."},"access_sales_roles":{"type":"boolean","example":false,"description":"Allows users with this role to manage sales roles in Administration."},"access_security":{"type":"boolean","example":false,"description":"Allows users with this role to manage the security settings of the space in Administration."},"access_units":{"type":"boolean","example":false,"description":"Allows users with this role to manage sales units in Administration."},"access_user_and_roles":{"type":"boolean","example":false,"description":"Allows users with this role to manage users, user roles and sales unit membership in Administration. Cannot be turned off on the default administrator role."},"access_whats_app_company_phone":{"type":"integer","description":"Which company phone numbers users with this role can use for WhatsApp messages, when WhatsApp is enabled for the space: none (NoAccess), those in allowed_company_phones (Selected) or all (All).\n\nInteger enum value: 0 - NoAccess, 1 - Selected, 2 - All","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"None can be used.","1":"Only those listed in the role's allowedCompanyEmails or allowedCompanyPhones.","2":"All company email accounts or phone numbers can be used."}},"bottom_menu_layout":{"type":"object","description":"The role's Navigation list as one tree: top-level rows in the role's default bottom menu order, where a group row (kind Section: Communication, Analytics, Archive, Tools or a custom section) carries its member items. Stored as the client sent it; until it is saved once the default list is returned, everything enabled and pinned. The access_* flags of the role are not touched by it: the client sends both."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"allowed_pipelines":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedPipeline record."}},"description":"Related AllowedPipeline record; see 'updateAllowedPipelineInput' for its fields."},"description":"Pipelines this user role can use. Effective only when access_entity_pipeline is set to Selected; with All-* values every pipeline is granted."},"allowed_lead_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedLeadType record."}},"description":"Related AllowedLeadType record; see 'updateAllowedLeadTypeInput' for its fields."},"description":"Lead types this user role can use. Effective only when access_entity_lead_types is set to Selected."},"allowed_quote_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedQuoteType record."}},"description":"Related AllowedQuoteType record; see 'updateAllowedQuoteTypeInput' for its fields."},"description":"Quote types this user role can use. Effective only when access_entity_quote_types is set to Selected."},"allowed_account_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedAccountType record."}},"description":"Related AllowedAccountType record; see 'updateAllowedAccountTypeInput' for its fields."},"description":"Account types this user role can use. Effective only when access_entity_account_types is set to Selected."},"allowed_contact_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedContactType record."}},"description":"Related AllowedContactType record; see 'updateAllowedContactTypeInput' for its fields."},"description":"Contact types this user role can use. Effective only when access_entity_contact_types is set to Selected."},"allowed_task_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedTaskType record."}},"description":"Related AllowedTaskType record; see 'updateAllowedTaskTypeInput' for its fields."},"description":"Task types this user role can use. Effective only when access_entity_task_types is set to Selected."},"allowed_appointment_types":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedAppointmentType record."}},"description":"Related AllowedAppointmentType record; see 'updateAllowedAppointmentTypeInput' for its fields."},"description":"Appointment types this user role can use. Effective only when access_entity_appointment_types is set to Selected. The recurrent appointment type is always granted implicitly and cannot be stored here."},"allowed_company_emails":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedCompanyEmail record."}},"description":"Related AllowedCompanyEmail record; see 'updateAllowedCompanyEmailInput' for its fields."},"description":"Company email addresses this user role can send from. Effective only when access_company_emails is set to Selected."},"allowed_company_phones":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related AllowedCompanyPhone record."}},"description":"Related AllowedCompanyPhone record; see 'updateAllowedCompanyPhoneInput' for its fields."},"description":"Company phones this user role can use for calling/SMS. Effective only when access_calling_company_phone is set to Selected."},"custom_entities":{"type":"string","format":"binary","example":"blob","description":"Per-custom-entity access settings (access level, allowed types, default screen profile, etc.) for users with this role. One entry per custom entity defined in the space."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Media":{"description":"Recording of a call or meeting with its transcription and AI summary, attached to a call, task or appointment.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment":{"type":"string","format":"uri","description":"Appointment this media is attached to. Set when activity_id resolves to an Appointment.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"task":{"type":"string","format":"uri","description":"Task this media is attached to. Set when activity_id resolves to a Task.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"call":{"type":"string","format":"uri","description":"Call this media belongs to (e.g. a recording or transcription).\n\nRelated Call record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Call' for its fields."},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked appointment or task, or empty when not linked to an activity."},"call_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked call, or empty when not linked."},"data":{"type":"object","description":"Provider-specific metadata about the media (e.g. transcription identifiers, recording parameters), as a JSON object."},"description":{"type":"string","example":"string","description":"Free-text description of the media."},"error_code":{"type":"integer","format":"int32","example":1,"description":"Error code reported by the calling/recording provider when processing failed; empty on success."},"status":{"type":"integer","description":"Processing stage of the recording and its transcription, from upload through transcoding to transcription. TranscriptionCompleted is also set when transcription failed; check error_code.\n\nInteger enum value: 1 - NoRecording, 2 - Uploading, 3 - Uploaded, 4 - Transcoding, 5 - TranscriptionInProgress, 6 - TranscriptionCompleted","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"No recording is attached yet.","2":"The recording is being uploaded.","3":"The recording is available and waiting for transcription.","4":"The recording is being converted to a format suitable for transcription.","5":"The recording is being transcribed.","6":"Transcription finished; check errorCode to see whether it failed."}},"type":{"type":"integer","description":"Kind of media. Recordings created by the application, uploaded or from calls, are Transcription: an audio or video recording transcribed to text; Audio and Video are currently not set.\n\nInteger enum value: 1 - Audio, 2 - Video, 3 - Transcription","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Audio recording.","2":"Video recording.","3":"Recording that is transcribed to text."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"audio_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the cloud object holding the audio recording, when available."},"transcription_file_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the cloud object holding the transcription payload, when available."},"transcription_id":{"type":"string","example":"string","description":"External transcription identifier from the calling provider."},"transcription_language":{"type":"string","example":"string","description":"Language requested for the transcription as a BCP-47 locale tag (e.g. \"en-US\", \"de-DE\"). Set when the transcription was requested."},"transcription_summary":{"type":"string","example":"string","description":"AI-generated summary of the transcription content."},"get_transcription_viewer_token":{"type":"string","example":"string","description":"Short-lived token for opening the transcription in the calling provider's viewer. Empty when no transcription is available."}},"required":["is_delete_protected","id","transcription_id","transcription_language","transcription_summary","get_transcription_viewer_token"]},"createMediaInput":{"description":"Field values of a new Media record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked appointment or task, or empty when not linked to an activity."},"call_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked call, or empty when not linked."},"data":{"type":"object","description":"Provider-specific metadata about the media (e.g. transcription identifiers, recording parameters), as a JSON object."},"description":{"type":"string","example":"string","description":"Free-text description of the media."},"error_code":{"type":"integer","format":"int32","example":1,"description":"Error code reported by the calling/recording provider when processing failed; empty on success."},"status":{"type":"integer","description":"Processing stage of the recording and its transcription, from upload through transcoding to transcription. TranscriptionCompleted is also set when transcription failed; check error_code.\n\nInteger enum value: 1 - NoRecording, 2 - Uploading, 3 - Uploaded, 4 - Transcoding, 5 - TranscriptionInProgress, 6 - TranscriptionCompleted","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"No recording is attached yet.","2":"The recording is being uploaded.","3":"The recording is available and waiting for transcription.","4":"The recording is being converted to a format suitable for transcription.","5":"The recording is being transcribed.","6":"Transcription finished; check errorCode to see whether it failed."}},"type":{"type":"integer","description":"Kind of media. Recordings created by the application, uploaded or from calls, are Transcription: an audio or video recording transcribed to text; Audio and Video are currently not set.\n\nInteger enum value: 1 - Audio, 2 - Video, 3 - Transcription","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Audio recording.","2":"Video recording.","3":"Recording that is transcribed to text."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"updateMediaInput":{"description":"Field values to change on a Media record; fields left out keep their values.","properties":{"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked appointment or task, or empty when not linked to an activity."},"call_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked call, or empty when not linked."},"data":{"type":"object","description":"Provider-specific metadata about the media (e.g. transcription identifiers, recording parameters), as a JSON object."},"description":{"type":"string","example":"string","description":"Free-text description of the media."},"error_code":{"type":"integer","format":"int32","example":1,"description":"Error code reported by the calling/recording provider when processing failed; empty on success."},"status":{"type":"integer","description":"Processing stage of the recording and its transcription, from upload through transcoding to transcription. TranscriptionCompleted is also set when transcription failed; check error_code.\n\nInteger enum value: 1 - NoRecording, 2 - Uploading, 3 - Uploaded, 4 - Transcoding, 5 - TranscriptionInProgress, 6 - TranscriptionCompleted","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"No recording is attached yet.","2":"The recording is being uploaded.","3":"The recording is available and waiting for transcription.","4":"The recording is being converted to a format suitable for transcription.","5":"The recording is being transcribed.","6":"Transcription finished; check errorCode to see whether it failed."}},"type":{"type":"integer","description":"Kind of media. Recordings created by the application, uploaded or from calls, are Transcription: an audio or video recording transcribed to text; Audio and Video are currently not set.\n\nInteger enum value: 1 - Audio, 2 - Video, 3 - Transcription","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Audio recording.","2":"Video recording.","3":"Recording that is transcribed to text."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchMediaInput":{"description":"Field values of a Media record to create, or to update when its id is set.","properties":{"activity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked appointment or task, or empty when not linked to an activity."},"call_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked call, or empty when not linked."},"data":{"type":"object","description":"Provider-specific metadata about the media (e.g. transcription identifiers, recording parameters), as a JSON object."},"description":{"type":"string","example":"string","description":"Free-text description of the media."},"error_code":{"type":"integer","format":"int32","example":1,"description":"Error code reported by the calling/recording provider when processing failed; empty on success."},"status":{"type":"integer","description":"Processing stage of the recording and its transcription, from upload through transcoding to transcription. TranscriptionCompleted is also set when transcription failed; check error_code.\n\nInteger enum value: 1 - NoRecording, 2 - Uploading, 3 - Uploaded, 4 - Transcoding, 5 - TranscriptionInProgress, 6 - TranscriptionCompleted","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"No recording is attached yet.","2":"The recording is being uploaded.","3":"The recording is available and waiting for transcription.","4":"The recording is being converted to a format suitable for transcription.","5":"The recording is being transcribed.","6":"Transcription finished; check errorCode to see whether it failed."}},"type":{"type":"integer","description":"Kind of media. Recordings created by the application, uploaded or from calls, are Transcription: an audio or video recording transcribed to text; Audio and Video are currently not set.\n\nInteger enum value: 1 - Audio, 2 - Video, 3 - Transcription","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Audio recording.","2":"Video recording.","3":"Recording that is transcribed to text."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Memo":{"description":"Internal message written by a user and linked to records, which other users can comment on.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User who authored the memo.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the memo author."},"subject":{"type":"string","example":"string","description":"Short summary line of the memo."},"table_name":{"type":"string","example":"string","description":"Discriminator identifying the concrete record type — always \"memo\" for Memo records. Read-only; useful when consuming polymorphic Message results.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageSharingSalesUnitRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageSharingSalesUnitRelation' for its fields."},"description":"Sales units that have been granted shared access to this memo."},"sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageSharingClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageSharingClientRelation' for its fields."},"description":"Users that have been granted shared access to this memo."},"account_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageRelation' for its fields."},"description":"Accounts this memo is linked to."},"contact_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageRelation' for its fields."},"description":"Contacts this memo is linked to."},"project_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageRelation' for its fields."},"description":"Projects this memo is linked to."},"lead_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageRelation' for its fields."},"description":"Leads this memo is linked to."},"quote_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageRelation' for its fields."},"description":"Quotes this memo is linked to."},"opportunity_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageRelation' for its fields."},"description":"Opportunities this memo is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related MessageRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MessageRelation' for its fields."},"description":"Custom entity records this memo is linked to."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Documents linked to this memo."},"comments":{"type":"array","items":{"type":"string","format":"uri","description":"Related MemoComment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'MemoComment' for its fields."},"description":"Comments authored on this memo."}},"required":["is_delete_protected","id","owner","owner_id","subject","table_name"]},"createMemoInput":{"description":"Field values of a new Memo record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the memo author."},"subject":{"type":"string","example":"string","description":"Short summary line of the memo."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageSharingSalesUnitRelation record."}},"description":"Related MessageSharingSalesUnitRelation record; see 'createMessageSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this memo."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageSharingClientRelation record."}},"description":"Related MessageSharingClientRelation record; see 'createMessageSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this memo."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'createMessageRelationInput' for its fields."},"description":"Accounts this memo is linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'createMessageRelationInput' for its fields."},"description":"Contacts this memo is linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'createMessageRelationInput' for its fields."},"description":"Projects this memo is linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'createMessageRelationInput' for its fields."},"description":"Leads this memo is linked to."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'createMessageRelationInput' for its fields."},"description":"Quotes this memo is linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'createMessageRelationInput' for its fields."},"description":"Opportunities this memo is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'createMessageRelationInput' for its fields."},"description":"Custom entity records this memo is linked to."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Documents linked to this memo."},"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MemoComment record."}},"description":"Related MemoComment record; see 'createMemoCommentInput' for its fields."},"description":"Comments authored on this memo."}},"required":["owner_id","subject"]},"updateMemoInput":{"description":"Field values to change on a Memo record; fields left out keep their values.","properties":{"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the memo author."},"subject":{"type":"string","example":"string","description":"Short summary line of the memo."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageSharingSalesUnitRelation record."}},"description":"Related MessageSharingSalesUnitRelation record; see 'updateMessageSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this memo."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageSharingClientRelation record."}},"description":"Related MessageSharingClientRelation record; see 'updateMessageSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this memo."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Accounts this memo is linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Contacts this memo is linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Projects this memo is linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Leads this memo is linked to."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Quotes this memo is linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Opportunities this memo is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Custom entity records this memo is linked to."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this memo."},"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MemoComment record."}},"description":"Related MemoComment record; see 'updateMemoCommentInput' for its fields."},"description":"Comments authored on this memo."}}},"batchMemoInput":{"description":"Field values of a Memo record to create, or to update when its id is set.","properties":{"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the memo author."},"subject":{"type":"string","example":"string","description":"Short summary line of the memo."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageSharingSalesUnitRelation record."}},"description":"Related MessageSharingSalesUnitRelation record; see 'updateMessageSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this memo."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageSharingClientRelation record."}},"description":"Related MessageSharingClientRelation record; see 'updateMessageSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this memo."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Accounts this memo is linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Contacts this memo is linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Projects this memo is linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Leads this memo is linked to."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Quotes this memo is linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Opportunities this memo is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MessageRelation record."}},"description":"Related MessageRelation record; see 'updateMessageRelationInput' for its fields."},"description":"Custom entity records this memo is linked to."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this memo."},"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related MemoComment record."}},"description":"Related MemoComment record; see 'updateMemoCommentInput' for its fields."},"description":"Comments authored on this memo."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"MemoComment":{"description":"Comment a user wrote on a memo.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"memo":{"type":"string","format":"uri","description":"Memo this comment belongs to.\n\nRelated Memo record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Memo' for its fields."},"owner":{"type":"string","format":"uri","description":"User who authored the comment.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"comment":{"type":"string","example":"string","description":"Free-form text body of the comment."},"memo_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the memo this comment belongs to."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the comment author."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","memo","owner","comment","memo_id","owner_id"]},"createMemoCommentInput":{"description":"Field values of a new MemoComment record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"comment":{"type":"string","example":"string","description":"Free-form text body of the comment."},"memo_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the memo this comment belongs to."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the comment author."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["comment","memo_id","owner_id"]},"updateMemoCommentInput":{"description":"Field values to change on a MemoComment record; fields left out keep their values.","properties":{"comment":{"type":"string","example":"string","description":"Free-form text body of the comment."},"memo_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the memo this comment belongs to."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the comment author."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchMemoCommentInput":{"description":"Field values of a MemoComment record to create, or to update when its id is set.","properties":{"comment":{"type":"string","example":"string","description":"Free-form text body of the comment."},"memo_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the memo this comment belongs to."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the comment author."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"MessageRelation":{"description":"Link between a message (email or memo) and a record such as an account, contact, lead or opportunity.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account the message is linked to, or empty when not linked to an account.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact the message is linked to, or empty when not linked to a contact.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"custom_entity":{"type":"string","format":"uri","description":"Custom entity record the message is linked to, or empty when not linked.\n\nRelated CustomEntity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntity' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead the message is linked to. Set when lead_oppty_id resolves to a Lead; otherwise empty.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity the message is linked to. Set when lead_oppty_id resolves to an Opportunity; otherwise empty.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"email":{"type":"string","format":"uri","description":"Email side of the link. Set when message_id resolves to an Email; otherwise empty.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"memo":{"type":"string","format":"uri","description":"Memo side of the link. Set when message_id resolves to a Memo; otherwise empty.\n\nRelated Memo record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Memo' for its fields."},"project":{"type":"string","format":"uri","description":"Project the message is linked to, or empty when not linked.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote the message is linked to, or empty when not linked.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the message is linked to, or empty when not linked."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email or memo on this link."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","message_id"]},"createMessageRelationInput":{"description":"Field values of a new MessageRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the message is linked to, or empty when not linked."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email or memo on this link."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["message_id"]},"updateMessageRelationInput":{"description":"Field values to change on a MessageRelation record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the message is linked to, or empty when not linked."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email or memo on this link."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchMessageRelationInput":{"description":"Field values of a MessageRelation record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the message is linked to, or empty when not linked."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email or memo on this link."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"MessageSharingClientRelation":{"description":"Share of a message (email or memo) with an individual user.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User the message is shared with.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"email":{"type":"string","format":"uri","description":"Email being shared. Set when message_id resolves to an Email; otherwise empty.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"memo":{"type":"string","format":"uri","description":"Memo being shared. Set when message_id resolves to a Memo; otherwise empty.\n\nRelated Memo record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Memo' for its fields."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email or memo being shared."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","client","client_id","message_id"]},"createMessageSharingClientRelationInput":{"description":"Field values of a new MessageSharingClientRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email or memo being shared."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["client_id","message_id"]},"updateMessageSharingClientRelationInput":{"description":"Field values to change on a MessageSharingClientRelation record; fields left out keep their values.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email or memo being shared."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchMessageSharingClientRelationInput":{"description":"Field values of a MessageSharingClientRelation record to create, or to update when its id is set.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email or memo being shared."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"MessageSharingSalesUnitRelation":{"description":"Share of a message (email or memo) with a sales unit.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"email":{"type":"string","format":"uri","description":"Email being shared. Set when message_id resolves to an Email; otherwise empty.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"memo":{"type":"string","format":"uri","description":"Memo being shared. Set when message_id resolves to a Memo; otherwise empty.\n\nRelated Memo record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Memo' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the message is shared with.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email or memo being shared."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","unit","message_id","unit_id"]},"createMessageSharingSalesUnitRelationInput":{"description":"Field values of a new MessageSharingSalesUnitRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email or memo being shared."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["message_id","unit_id"]},"updateMessageSharingSalesUnitRelationInput":{"description":"Field values to change on a MessageSharingSalesUnitRelation record; fields left out keep their values.","properties":{"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email or memo being shared."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchMessageSharingSalesUnitRelationInput":{"description":"Field values of a MessageSharingSalesUnitRelation record to create, or to update when its id is set.","properties":{"message_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email or memo being shared."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Note":{"description":"Note a user wrote on a record such as an account, contact, lead, opportunity, project or quote.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account the note is attached to. Exactly one of account / contact / lead_oppty / project / quote / custom_entity must be set.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact the note is attached to.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"custom_entity":{"type":"string","format":"uri","description":"Custom entity record the note is attached to.\n\nRelated CustomEntity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntity' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead the note is attached to. Set when lead_oppty_id resolves to a Lead.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity the note is attached to. Set when lead_oppty_id resolves to an Opportunity.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"owner":{"type":"string","format":"uri","description":"User who authored the note.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"project":{"type":"string","format":"uri","description":"Project the note is attached to.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote the note is attached to.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account the note is attached to."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact the note is attached to."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity record the note is attached to."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the note is attached to."},"note":{"type":"string","example":"string","description":"Free-form text body of the note (sanitized HTML allowed)."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the note author."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project the note is attached to."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote the note is attached to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","owner","note","owner_id"]},"createNoteInput":{"description":"Field values of a new Note record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account the note is attached to."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact the note is attached to."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity record the note is attached to."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the note is attached to."},"note":{"type":"string","example":"string","description":"Free-form text body of the note (sanitized HTML allowed)."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the note author."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project the note is attached to."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote the note is attached to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["note","owner_id"]},"updateNoteInput":{"description":"Field values to change on a Note record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account the note is attached to."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact the note is attached to."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity record the note is attached to."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the note is attached to."},"note":{"type":"string","example":"string","description":"Free-form text body of the note (sanitized HTML allowed)."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the note author."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project the note is attached to."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote the note is attached to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchNoteInput":{"description":"Field values of a Note record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account the note is attached to."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact the note is attached to."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the custom entity record the note is attached to."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the note is attached to."},"note":{"type":"string","example":"string","description":"Free-form text body of the note (sanitized HTML allowed)."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the note author."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project the note is attached to."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote the note is attached to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OnlineForm":{"description":"Submission (response) of an online form, with the answers and the records it created or updated.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"currency_exchange_rates_list":{"type":"string","format":"uri","description":"Currency exchange rate list applied to product line-items at submission time.\n\nRelated CurrencyExchangeRatesList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRatesList' for its fields."},"email":{"type":"string","format":"uri","description":"Email submitted with the response, used for identification or response notifications.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"online_form_type":{"type":"string","format":"uri","description":"Online form definition this submission belongs to.\n\nRelated OnlineFormType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineFormType' for its fields."},"product_currency":{"type":"string","format":"uri","description":"Currency selected by the respondent for product line-items, when the form contains products.\n\nRelated Currency record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Currency' for its fields."},"product_price_list":{"type":"string","format":"uri","description":"Product price list selected by the respondent, when the form contains products.\n\nRelated ProductPriceList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProductPriceList' for its fields."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to product line items at submission time."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email record, when available."},"field_ids":{"type":"object","description":"Ids of the fields included in the form when this submission was captured, as a JSON array of field ids (UUIDs)."},"online_form_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form definition."},"product_currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected currency."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected price list."},"status":{"type":"integer","description":"Overall result of processing the submission: the most severe status among its activity log lines, Error when a step failed.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related OnlineFormRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineFormRelation' for its fields."},"description":"Accounts the submission was linked to."},"contact_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related OnlineFormRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineFormRelation' for its fields."},"description":"Contacts the submission was linked to."},"lead_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related OnlineFormRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineFormRelation' for its fields."},"description":"Leads the submission was linked to."},"opportunity_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related OnlineFormRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineFormRelation' for its fields."},"description":"Opportunities the submission was linked to."},"quote_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related OnlineFormRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineFormRelation' for its fields."},"description":"Quotes the submission was linked to."},"project_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related OnlineFormRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineFormRelation' for its fields."},"description":"Projects the submission was linked to."},"custom_entity_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related OnlineFormRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineFormRelation' for its fields."},"description":"Custom entity records the submission was linked to."},"lines":{"type":"array","items":{"type":"string","format":"uri","description":"Related OnlineFormActivityLogLine record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineFormActivityLogLine' for its fields."},"description":"Activity log lines describing what was done with this submission (visible only)."},"responded_by":{"type":"string","example":"string","description":"Display name of the primary record (account/contact/lead/...) the submission was linked to."},"response_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the submission was received (the response was completed)."}},"required":["is_delete_protected","id","online_form_type","product_currency","field_ids","online_form_type_id","responded_by"]},"createOnlineFormInput":{"description":"Field values of a new OnlineForm record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to product line items at submission time."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email record, when available."},"field_ids":{"type":"object","description":"Ids of the fields included in the form when this submission was captured, as a JSON array of field ids (UUIDs)."},"online_form_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form definition."},"product_currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected currency."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected price list."},"status":{"type":"integer","description":"Overall result of processing the submission: the most severe status among its activity log lines, Error when a step failed.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'createOnlineFormRelationInput' for its fields."},"description":"Accounts the submission was linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'createOnlineFormRelationInput' for its fields."},"description":"Contacts the submission was linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'createOnlineFormRelationInput' for its fields."},"description":"Leads the submission was linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'createOnlineFormRelationInput' for its fields."},"description":"Opportunities the submission was linked to."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'createOnlineFormRelationInput' for its fields."},"description":"Quotes the submission was linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'createOnlineFormRelationInput' for its fields."},"description":"Projects the submission was linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'createOnlineFormRelationInput' for its fields."},"description":"Custom entity records the submission was linked to."}},"required":["field_ids","online_form_type_id"]},"updateOnlineFormInput":{"description":"Field values to change on an OnlineForm record; fields left out keep their values.","properties":{"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to product line items at submission time."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email record, when available."},"field_ids":{"type":"object","description":"Ids of the fields included in the form when this submission was captured, as a JSON array of field ids (UUIDs)."},"online_form_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form definition."},"product_currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected currency."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected price list."},"status":{"type":"integer","description":"Overall result of processing the submission: the most severe status among its activity log lines, Error when a step failed.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'updateOnlineFormRelationInput' for its fields."},"description":"Accounts the submission was linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'updateOnlineFormRelationInput' for its fields."},"description":"Contacts the submission was linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'updateOnlineFormRelationInput' for its fields."},"description":"Leads the submission was linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'updateOnlineFormRelationInput' for its fields."},"description":"Opportunities the submission was linked to."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'updateOnlineFormRelationInput' for its fields."},"description":"Quotes the submission was linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'updateOnlineFormRelationInput' for its fields."},"description":"Projects the submission was linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'updateOnlineFormRelationInput' for its fields."},"description":"Custom entity records the submission was linked to."}}},"batchOnlineFormInput":{"description":"Field values of an OnlineForm record to create, or to update when its id is set.","properties":{"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to product line items at submission time."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email record, when available."},"field_ids":{"type":"object","description":"Ids of the fields included in the form when this submission was captured, as a JSON array of field ids (UUIDs)."},"online_form_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form definition."},"product_currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected currency."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected price list."},"status":{"type":"integer","description":"Overall result of processing the submission: the most severe status among its activity log lines, Error when a step failed.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'updateOnlineFormRelationInput' for its fields."},"description":"Accounts the submission was linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'updateOnlineFormRelationInput' for its fields."},"description":"Contacts the submission was linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'updateOnlineFormRelationInput' for its fields."},"description":"Leads the submission was linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'updateOnlineFormRelationInput' for its fields."},"description":"Opportunities the submission was linked to."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'updateOnlineFormRelationInput' for its fields."},"description":"Quotes the submission was linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'updateOnlineFormRelationInput' for its fields."},"description":"Projects the submission was linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OnlineFormRelation record."}},"description":"Related OnlineFormRelation record; see 'updateOnlineFormRelationInput' for its fields."},"description":"Custom entity records the submission was linked to."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OnlineFormActivityLogLine":{"description":"One step logged while processing an online form submission.","properties":{"formatted_text":{"type":"string","example":"string","description":"Human-readable rendering of the log line, prefixed with the line's timestamp and (when applicable) the parent record id."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"online_form":{"type":"string","format":"uri","description":"Online form submission this log line belongs to.\n\nRelated OnlineForm record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineForm' for its fields."},"executed_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the step represented by this line was executed. Empty for scheduled steps that have not yet run."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the submission."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its log run."},"status":{"type":"integer","description":"Result of the processing step recorded by this line, such as Ok, Warning or Error.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}},"required":["formatted_text","is_delete_protected","id","online_form","online_form_id","sort_order"]},"createOnlineFormActivityLogLineInput":{"description":"Field values of a new OnlineFormActivityLogLine record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"executed_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the step represented by this line was executed. Empty for scheduled steps that have not yet run."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the submission."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its log run."},"status":{"type":"integer","description":"Result of the processing step recorded by this line, such as Ok, Warning or Error.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}},"required":["online_form_id","sort_order"]},"updateOnlineFormActivityLogLineInput":{"description":"Field values to change on an OnlineFormActivityLogLine record; fields left out keep their values.","properties":{"executed_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the step represented by this line was executed. Empty for scheduled steps that have not yet run."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the submission."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its log run."},"status":{"type":"integer","description":"Result of the processing step recorded by this line, such as Ok, Warning or Error.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}}},"batchOnlineFormActivityLogLineInput":{"description":"Field values of an OnlineFormActivityLogLine record to create, or to update when its id is set.","properties":{"executed_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the step represented by this line was executed. Empty for scheduled steps that have not yet run."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the submission."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its log run."},"status":{"type":"integer","description":"Result of the processing step recorded by this line, such as Ok, Warning or Error.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OnlineFormDataExRelation":{"description":"Option selected in a multi-select checkbox field of an online form submission.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"data":{"type":"string","format":"uri","description":"Option selected in the multi-select field; it belongs to the data set given by data_set_id.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"online_form":{"type":"string","format":"uri","description":"Online form submission on which the option is selected.\n\nRelated OnlineForm record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineForm' for its fields."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form submission."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","data","online_form","data_id","data_set_id","online_form_id"]},"createOnlineFormDataExRelationInput":{"description":"Field values of a new OnlineFormDataExRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form submission."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["data_id","data_set_id","online_form_id"]},"updateOnlineFormDataExRelationInput":{"description":"Field values to change on an OnlineFormDataExRelation record; fields left out keep their values.","properties":{"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form submission."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchOnlineFormDataExRelationInput":{"description":"Field values of an OnlineFormDataExRelation record to create, or to update when its id is set.","properties":{"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form submission."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OnlineFormRelation":{"description":"Link between an online form submission and a record it created or updated.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account the submission is linked to, when applicable.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact the submission is linked to, when applicable.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"custom_entity":{"type":"string","format":"uri","description":"Custom entity record the submission is linked to, when applicable.\n\nRelated CustomEntity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntity' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead the submission is linked to. Set when lead_oppty_id resolves to a Lead.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity the submission is linked to. Set when lead_oppty_id resolves to an Opportunity.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"online_form":{"type":"string","format":"uri","description":"Online form submission being linked.\n\nRelated OnlineForm record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineForm' for its fields."},"project":{"type":"string","format":"uri","description":"Project the submission is linked to, when applicable.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote the submission is linked to, when applicable.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that points to the submission's primary record. There is at most one primary relation per submission and its entity must match the form's entity_type."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the submission."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","is_primary","online_form_id"]},"createOnlineFormRelationInput":{"description":"Field values of a new OnlineFormRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that points to the submission's primary record. There is at most one primary relation per submission and its entity must match the form's entity_type."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the submission."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_primary","online_form_id"]},"updateOnlineFormRelationInput":{"description":"Field values to change on an OnlineFormRelation record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that points to the submission's primary record. There is at most one primary relation per submission and its entity must match the form's entity_type."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the submission."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchOnlineFormRelationInput":{"description":"Field values of an OnlineFormRelation record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that points to the submission's primary record. There is at most one primary relation per submission and its entity must match the form's entity_type."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the submission."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OnlineFormStyle":{"description":"Visual style (colors, fonts, layout) that can be applied to online forms.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"object","description":"JSON definition of the style applied to the form (colors, fonts, layout). When null, the default style is used."},"use_lang":{"type":"boolean","example":false,"description":"When true, the style name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","name"]},"createOnlineFormStyleInput":{"description":"Field values of a new OnlineFormStyle record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"object","description":"JSON definition of the style applied to the form (colors, fonts, layout). When null, the default style is used."},"use_lang":{"type":"boolean","example":false,"description":"When true, the style name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["name"]},"updateOnlineFormStyleInput":{"description":"Field values to change on an OnlineFormStyle record; fields left out keep their values.","properties":{"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"object","description":"JSON definition of the style applied to the form (colors, fonts, layout). When null, the default style is used."},"use_lang":{"type":"boolean","example":false,"description":"When true, the style name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchOnlineFormStyleInput":{"description":"Field values of an OnlineFormStyle record to create, or to update when its id is set.","properties":{"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"object","description":"JSON definition of the style applied to the form (colors, fonts, layout). When null, the default style is used."},"use_lang":{"type":"boolean","example":false,"description":"When true, the style name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OnlineFormType":{"description":"Online form definition: the fields and settings of a web form whose submissions create or update records.","properties":{"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"form_edit_api":{"type":"object","description":"Typed, read-only view of the online form definition (form_edit): its fields, layout and settings."},"can_change_readonly":{"type":"boolean","example":false,"description":"False for types whose read-only setting is fixed, such as the recurrent appointment type; true otherwise."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User who owns the online form.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"style":{"type":"string","format":"uri","description":"Visual style applied to the form when rendered.\n\nRelated OnlineFormStyle record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineFormStyle' for its fields."},"auto_prefill_with_javascript":{"type":"boolean","example":false,"description":"When true, the embedded form JavaScript pre-fills fields from URL query parameters on load."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the form definition in the UI."},"entity_api_name":{"type":"string","example":"string","description":"API name of the custom entity the form targets. Set only when entity_type is CustomEntity; otherwise empty."},"entity_type":{"type":"integer","description":"Entity the form is built for: its fields can be placed on the form and each submission is linked to a record of this entity. For custom entities, entity_api_name identifies the custom entity.\n\nInteger enum value: 1 - Lead, 2 - Account, 3 - Contact, 4 - Opportunity, 5 - Task, 6 - Appointment, 7 - OpptyProductRelation, 8 - Project, 9 - Quote, 10 - OnlineForm, 11 - CustomEntity, 12 - Product","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","3":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","5":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","6":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","7":"Product line of an opportunity.","8":"Project delivered for an account or run internally, with its objectives, activities and progress.","9":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","10":"Submission (response) of an online form, with the answers and the records it created or updated.","11":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","12":"Product or service in the catalog that can be added as a line item to opportunities and quotes."}},"form_edit":{"type":"object","description":"Definition of the form layout (fields, sections, settings) shown to respondents, as a JSON object conforming to the online-form layout schema. Validated on write. This payload conforms to the `OnlineForm` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/OnlineForm.json","description":"OnlineForm JSON Schema"}},"is_enabled":{"type":"boolean","example":false,"description":"When true, the form is published and accepts new submissions; when false, the form returns an error to respondents."},"is_readonly":{"type":"boolean","example":false,"description":"True when the form is system-managed and its schema cannot be edited by users."},"last_schema_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to form_edit (form schema)."},"last_status_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to is_enabled."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"notifications_status":{"type":"object","description":"Tracks which threshold-reached notifications have already been sent for the current form configuration. Reset when the configuration changes."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"style_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the form style."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"activity_logs":{"type":"array","items":{"type":"string","format":"uri","description":"Related OnlineForm record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineForm' for its fields."},"description":"Submissions (one per response) recorded for this form."},"link_id":{"type":"string","example":"string","description":"Short identifier used in the public form URL (see link). Stable across the lifetime of the form."},"summarized_response_values":{"type":"integer","format":"int32","example":1,"description":"Sum of response values used to evaluate the response acceptance threshold (e.g. total responses, or evaluated value of the custom acceptance condition). Empty when no threshold is configured."},"link":{"type":"string","example":"string","description":"Public URL for accessing the form (suitable for sharing with respondents)."},"has_custom_recaptcha":{"type":"boolean","example":false,"description":"True when the form is configured with custom reCAPTCHA credentials; false when using the platform default reCAPTCHA setup."}},"required":["has_draft","is_delete_protected","form_edit_api","id","owner","style","entity_type","form_edit","is_enabled","is_readonly","name","owner_id","style_id","link_id","has_custom_recaptcha"]},"createOnlineFormTypeInput":{"description":"Field values of a new OnlineFormType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"auto_prefill_with_javascript":{"type":"boolean","example":false,"description":"When true, the embedded form JavaScript pre-fills fields from URL query parameters on load."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the form definition in the UI."},"entity_api_name":{"type":"string","example":"string","description":"API name of the custom entity the form targets. Set only when entity_type is CustomEntity; otherwise empty."},"entity_type":{"type":"integer","description":"Entity the form is built for: its fields can be placed on the form and each submission is linked to a record of this entity. For custom entities, entity_api_name identifies the custom entity.\n\nInteger enum value: 1 - Lead, 2 - Account, 3 - Contact, 4 - Opportunity, 5 - Task, 6 - Appointment, 7 - OpptyProductRelation, 8 - Project, 9 - Quote, 10 - OnlineForm, 11 - CustomEntity, 12 - Product","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","3":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","5":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","6":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","7":"Product line of an opportunity.","8":"Project delivered for an account or run internally, with its objectives, activities and progress.","9":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","10":"Submission (response) of an online form, with the answers and the records it created or updated.","11":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","12":"Product or service in the catalog that can be added as a line item to opportunities and quotes."}},"form_edit":{"type":"object","description":"Definition of the form layout (fields, sections, settings) shown to respondents, as a JSON object conforming to the online-form layout schema. Validated on write. This payload conforms to the `OnlineForm` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/OnlineForm.json","description":"OnlineForm JSON Schema"}},"is_enabled":{"type":"boolean","example":false,"description":"When true, the form is published and accepts new submissions; when false, the form returns an error to respondents."},"is_readonly":{"type":"boolean","example":false,"description":"True when the form is system-managed and its schema cannot be edited by users."},"last_schema_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to form_edit (form schema)."},"last_status_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to is_enabled."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"notifications_status":{"type":"object","description":"Tracks which threshold-reached notifications have already been sent for the current form configuration. Reset when the configuration changes."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"style_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the form style."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"custom_recaptcha":{"type":"string","format":"binary","example":"blob","description":"Custom reCAPTCHA keys (site_key and secret_key) used on the forms of this type instead of the platform default; null switches back to the default. Write-only; has_custom_recaptcha tells whether keys are set."}},"required":["entity_type","form_edit","is_enabled","is_readonly","name","owner_id","style_id","custom_recaptcha"]},"updateOnlineFormTypeInput":{"description":"Field values to change on an OnlineFormType record; fields left out keep their values.","properties":{"auto_prefill_with_javascript":{"type":"boolean","example":false,"description":"When true, the embedded form JavaScript pre-fills fields from URL query parameters on load."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the form definition in the UI."},"entity_api_name":{"type":"string","example":"string","description":"API name of the custom entity the form targets. Set only when entity_type is CustomEntity; otherwise empty."},"entity_type":{"type":"integer","description":"Entity the form is built for: its fields can be placed on the form and each submission is linked to a record of this entity. For custom entities, entity_api_name identifies the custom entity.\n\nInteger enum value: 1 - Lead, 2 - Account, 3 - Contact, 4 - Opportunity, 5 - Task, 6 - Appointment, 7 - OpptyProductRelation, 8 - Project, 9 - Quote, 10 - OnlineForm, 11 - CustomEntity, 12 - Product","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","3":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","5":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","6":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","7":"Product line of an opportunity.","8":"Project delivered for an account or run internally, with its objectives, activities and progress.","9":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","10":"Submission (response) of an online form, with the answers and the records it created or updated.","11":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","12":"Product or service in the catalog that can be added as a line item to opportunities and quotes."}},"form_edit":{"type":"object","description":"Definition of the form layout (fields, sections, settings) shown to respondents, as a JSON object conforming to the online-form layout schema. Validated on write. This payload conforms to the `OnlineForm` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/OnlineForm.json","description":"OnlineForm JSON Schema"}},"is_enabled":{"type":"boolean","example":false,"description":"When true, the form is published and accepts new submissions; when false, the form returns an error to respondents."},"is_readonly":{"type":"boolean","example":false,"description":"True when the form is system-managed and its schema cannot be edited by users."},"last_schema_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to form_edit (form schema)."},"last_status_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to is_enabled."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"notifications_status":{"type":"object","description":"Tracks which threshold-reached notifications have already been sent for the current form configuration. Reset when the configuration changes."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"style_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the form style."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"custom_recaptcha":{"type":"string","format":"binary","example":"blob","description":"Custom reCAPTCHA keys (site_key and secret_key) used on the forms of this type instead of the platform default; null switches back to the default. Write-only; has_custom_recaptcha tells whether keys are set."}}},"batchOnlineFormTypeInput":{"description":"Field values of an OnlineFormType record to create, or to update when its id is set.","properties":{"auto_prefill_with_javascript":{"type":"boolean","example":false,"description":"When true, the embedded form JavaScript pre-fills fields from URL query parameters on load."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the form definition in the UI."},"entity_api_name":{"type":"string","example":"string","description":"API name of the custom entity the form targets. Set only when entity_type is CustomEntity; otherwise empty."},"entity_type":{"type":"integer","description":"Entity the form is built for: its fields can be placed on the form and each submission is linked to a record of this entity. For custom entities, entity_api_name identifies the custom entity.\n\nInteger enum value: 1 - Lead, 2 - Account, 3 - Contact, 4 - Opportunity, 5 - Task, 6 - Appointment, 7 - OpptyProductRelation, 8 - Project, 9 - Quote, 10 - OnlineForm, 11 - CustomEntity, 12 - Product","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","3":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","5":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","6":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","7":"Product line of an opportunity.","8":"Project delivered for an account or run internally, with its objectives, activities and progress.","9":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","10":"Submission (response) of an online form, with the answers and the records it created or updated.","11":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","12":"Product or service in the catalog that can be added as a line item to opportunities and quotes."}},"form_edit":{"type":"object","description":"Definition of the form layout (fields, sections, settings) shown to respondents, as a JSON object conforming to the online-form layout schema. Validated on write. This payload conforms to the `OnlineForm` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/OnlineForm.json","description":"OnlineForm JSON Schema"}},"is_enabled":{"type":"boolean","example":false,"description":"When true, the form is published and accepts new submissions; when false, the form returns an error to respondents."},"is_readonly":{"type":"boolean","example":false,"description":"True when the form is system-managed and its schema cannot be edited by users."},"last_schema_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to form_edit (form schema)."},"last_status_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to is_enabled."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"notifications_status":{"type":"object","description":"Tracks which threshold-reached notifications have already been sent for the current form configuration. Reset when the configuration changes."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"style_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the form style."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"custom_recaptcha":{"type":"string","format":"binary","example":"blob","description":"Custom reCAPTCHA keys (site_key and secret_key) used on the forms of this type instead of the platform default; null switches back to the default. Write-only; has_custom_recaptcha tells whether keys are set."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OnlineFormTypeEmailRelation":{"description":"Email that sent an online form link to a recipient, with the record it was sent on.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account the email recipient belongs to, when applicable.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact the email was addressed to, when applicable.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"custom_entity":{"type":"string","format":"uri","description":"Custom entity record the form was sent on, when applicable.\n\nRelated CustomEntity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntity' for its fields."},"email":{"type":"string","format":"uri","description":"Email message used to deliver the form link to the recipient.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead the form was sent on. Set when lead_oppty_id resolves to a Lead.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity the form was sent on. Set when lead_oppty_id resolves to an Opportunity.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"online_form_type":{"type":"string","format":"uri","description":"Online form being shared with the recipient via email.\n\nRelated OnlineFormType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineFormType' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote the form was sent on, when applicable.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email message."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"online_form_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form whose link the email delivers to the recipient."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","email","online_form_type","email_id","online_form_type_id"]},"createOnlineFormTypeEmailRelationInput":{"description":"Field values of a new OnlineFormTypeEmailRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email message."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"online_form_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form whose link the email delivers to the recipient."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["email_id","online_form_type_id"]},"updateOnlineFormTypeEmailRelationInput":{"description":"Field values to change on an OnlineFormTypeEmailRelation record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email message."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"online_form_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form whose link the email delivers to the recipient."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchOnlineFormTypeEmailRelationInput":{"description":"Field values of an OnlineFormTypeEmailRelation record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email message."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not linked."},"online_form_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form whose link the email delivers to the recipient."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Opportunity":{"description":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"active_quote":{"type":"string","format":"uri","description":"Quote currently used to drive the opportunity (e.g. for synchronisation of monetary fields). Empty when no quote is active.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"currency_exchange_rates_list":{"type":"string","format":"uri","description":"Currency exchange rate list used to convert monetary fields linked to this opportunity. Empty to inherit the team space default.\n\nRelated CurrencyExchangeRatesList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRatesList' for its fields."},"lead_source":{"type":"string","format":"uri","description":"How the opportunity originated (e.g. Website, Referral, Trade Show). Configurable per team space.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"oppty_type":{"type":"string","format":"uri","description":"Opportunity type that classifies this opportunity. Each type maps to one pipeline and drives which form, fields and stages apply.\n\nRelated OpportunityType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpportunityType' for its fields."},"owner":{"type":"string","format":"uri","description":"Sales user who owns this opportunity.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"product_currency":{"type":"string","format":"uri","description":"Currency used for product line-item prices on this opportunity.\n\nRelated Currency record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Currency' for its fields."},"product_price_list":{"type":"string","format":"uri","description":"Product price list used to populate prices for product line items added to this opportunity. Empty to use catalog defaults.\n\nRelated ProductPriceList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProductPriceList' for its fields."},"reason_of_close":{"type":"string","format":"uri","description":"Configurable reason recorded when the opportunity is archived (lost). Required when the lost form mandates it.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"step":{"type":"string","format":"uri","description":"Pipeline step the opportunity is currently sitting in. Reaching the last step in the pipeline marks the opportunity as won; archiving sets it to lost.\n\nRelated Step record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Step' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit this opportunity is assigned to. Determines which team members can see the record under unit-based sharing.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"active_quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote currently synchronized with this opportunity, or empty when no quote is active. A quote can be active on only one opportunity at a time."},"closing_date":{"type":"string","format":"date","example":"2019-01-01","description":"Expected or actual closing date of the opportunity."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this opportunity."},"description":{"type":"string","example":"string","description":"Free-form description of the opportunity."},"is_archived":{"type":"boolean","example":false,"description":"True when the opportunity has been archived (lost). Archived opportunities remain readable but are hidden from active lists and cannot be edited until reactivated."},"is_value_auto_calculate":{"type":"boolean","example":false,"description":"True when value is auto-calculated from the opportunity product line items. False when the user enters value directly."},"label_flag":{"type":"string","example":1,"enum":[1,2,4],"description":"User-set colored flag used to highlight the opportunity in lists and reports.","x-enumDescriptions":{"1":"Marked as a priority.","2":"Marked as hot.","4":"Marked as stalled."}},"last_ai_buying_center_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested buying center was last applied to this opportunity."},"lead_source_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead source the opportunity originated from."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity owner."},"product_currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency used for product line-item prices on this opportunity."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the price list that supplies prices for product line items added to this opportunity, or empty to use catalog defaults."},"product_sections":{"type":"object","description":"Product sections grouping the record's line items, as a JSON array of {\"id\": <UUID>, \"name\": <string>} objects. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProductSection This payload conforms to the `ProductSection` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ProductSection.json","description":"ProductSection JSON Schema"}},"quick_account_email":{"type":"string","example":"string","description":"Free-text company email captured at opportunity creation when no Account record has been linked yet."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name captured at opportunity creation when no Account record has been linked yet."},"quick_account_phone":{"type":"string","example":"string","description":"Free-text company phone captured at opportunity creation when no Account record has been linked yet."},"quick_contact_name":{"type":"string","example":"string","description":"Free-text contact name captured at opportunity creation when no Contact record has been linked yet."},"quick_email":{"type":"string","example":"string","description":"Free-text contact email captured at opportunity creation when no Contact record has been linked yet."},"quick_phone":{"type":"string","example":"string","description":"Free-text contact phone captured at opportunity creation when no Contact record has been linked yet."},"ranking":{"type":"integer","format":"int32","example":1,"description":"Qualitative ranking score (1-10) the user assigns to indicate the strength of the opportunity."},"reason_of_close_description":{"type":"string","example":"string","description":"Free-form note explaining why the opportunity was archived (lost)."},"reason_of_close_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reason of close option selected when the opportunity was archived (lost)."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline step."},"table_name":{"type":"string","example":"string","description":"Discriminator identifying the concrete record type — always \"opportunity\" for Opportunity records. Read-only; useful when consuming polymorphic LeadOppty results.","readOnly":true},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"was_qualified":{"type":"boolean","example":false,"description":"True when the opportunity has gone through the qualification step at least once."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"value":{"type":"object","properties":{"base_value":{"type":"number","format":"double","example":"4.32","description":"Value in the base currency of the space. If empty, it is calculated from value_foreign at the current exchange rate."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency of value_foreign."},"value_foreign":{"type":"number","format":"double","example":"4.32","description":"Value in the currency set by currency_id. If empty, it is calculated from base_value at the current exchange rate."}},"required":["base_value","currency_id","value_foreign"],"description":"Monetary value of the opportunity; on create, send `currency_id` and `base_value`, and `value_foreign` is computed."},"oppty_recurrence":{"type":"string","format":"uri","description":"Recurrence schedule generating periodic copies of this opportunity, or empty when no recurrence is set up.\n\nRelated OpptyRecurrence record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyRecurrence' for its fields."},"revenue_schedule":{"type":"string","format":"uri","description":"Revenue schedule splitting the opportunity value across periods, or empty when revenue scheduling is not enabled for this opportunity.\n\nRelated OpptyRevenueSchedule record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyRevenueSchedule' for its fields."},"product_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related OpptyProductRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyProductRelation' for its fields."},"description":"Product line items on this opportunity. Each entry holds the product, quantity, price and discount that contribute to the opportunity value when is_value_auto_calculate is true."},"primary_contact":{"type":"string","format":"uri","description":"Primary contact of this opportunity. Set automatically from the contact relation marked as primary.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"primary_account":{"type":"string","format":"uri","description":"Primary account of this opportunity. Set automatically from the account relation marked as primary.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"contact_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related LeadOpptyContactRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadOpptyContactRelation' for its fields."},"description":"Contacts linked to this opportunity, including their roles and org-chart positions."},"account_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related LeadOpptyAccountRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadOpptyAccountRelation' for its fields."},"description":"Accounts linked to this opportunity; required on create, with one relation marked `is_primary: true`, the primary account."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Documents linked to this opportunity."},"quote_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"description":"Quotes prepared for this opportunity."},"status":{"type":"integer","description":"Status of the opportunity: 1 Open, 2 Lost, 3 Won. Read-only; derived from the current pipeline step and the archived flag.\n\nInteger enum value: 1 - Open, 2 - Lost, 3 - Won","example":1,"enum":[1,2,3],"readOnly":true,"x-enumDescriptions":{"1":"The opportunity is active in the pipeline.","2":"The opportunity was archived without being won.","3":"The opportunity reached the last step of its pipeline."}},"qualify_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of when the opportunity was qualified, taken from the matching KPI event. Empty for opportunities that have not been qualified. Read-only."},"won_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of when the opportunity was won. Setting it adjusts the underlying win event; empty for opportunities that have not been won."},"lost_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of when the opportunity was archived (lost). Setting it adjusts the underlying loss event; empty for opportunities that have not been archived."},"days_in_step":{"type":"integer","format":"int32","example":1,"description":"Number of days the opportunity has been sitting in its current pipeline step. Read-only; computed by Coevera from the most recent move event and per-step timeframe history."},"is_favorite":{"type":"boolean","example":false,"description":"True when the current authenticated user has marked this opportunity as favorite. Per-user."},"sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related LeadOpptySharingSalesUnitRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadOpptySharingSalesUnitRelation' for its fields."},"description":"Sales units that have been granted shared access to this opportunity. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related LeadOpptySharingClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadOpptySharingClientRelation' for its fields."},"description":"Users that have been granted shared access to this opportunity. Editable only when share_mode allows user sharing."},"tags":{"type":"array","items":{"type":"string","format":"uri","description":"Related TagRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TagRelation' for its fields."},"description":"Tag labels applied to this opportunity."},"static_profiles":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProfileRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProfileRelation' for its fields."},"description":"Saved view profiles this opportunity currently matches."},"formatted_name":{"type":"string","example":"string","description":"Display version of the opportunity name, used in lists and references."},"modified_by_user":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent modification made by an end user (excluding system changes). Read-only; computed by Coevera."}},"required":["is_delete_protected","id","oppty_type","owner","product_currency","step","unit","closing_date","name","owner_id","step_id","table_name","value","status","days_in_step","is_favorite","formatted_name"]},"createOpportunityInput":{"description":"Field values of a new Opportunity record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"active_quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote currently synchronized with this opportunity, or empty when no quote is active. A quote can be active on only one opportunity at a time."},"closing_date":{"type":"string","format":"date","example":"2019-01-01","description":"Expected or actual closing date of the opportunity."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this opportunity."},"description":{"type":"string","example":"string","description":"Free-form description of the opportunity."},"is_archived":{"type":"boolean","example":false,"description":"True when the opportunity has been archived (lost). Archived opportunities remain readable but are hidden from active lists and cannot be edited until reactivated."},"is_value_auto_calculate":{"type":"boolean","example":false,"description":"True when value is auto-calculated from the opportunity product line items. False when the user enters value directly."},"label_flag":{"type":"string","example":1,"enum":[1,2,4],"description":"User-set colored flag used to highlight the opportunity in lists and reports.","x-enumDescriptions":{"1":"Marked as a priority.","2":"Marked as hot.","4":"Marked as stalled."}},"last_ai_buying_center_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested buying center was last applied to this opportunity."},"lead_source_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead source the opportunity originated from."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity owner."},"product_currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency used for product line-item prices on this opportunity."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the price list that supplies prices for product line items added to this opportunity, or empty to use catalog defaults."},"product_sections":{"type":"object","description":"Product sections grouping the record's line items, as a JSON array of {\"id\": <UUID>, \"name\": <string>} objects. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProductSection This payload conforms to the `ProductSection` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ProductSection.json","description":"ProductSection JSON Schema"}},"quick_account_email":{"type":"string","example":"string","description":"Free-text company email captured at opportunity creation when no Account record has been linked yet."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name captured at opportunity creation when no Account record has been linked yet."},"quick_account_phone":{"type":"string","example":"string","description":"Free-text company phone captured at opportunity creation when no Account record has been linked yet."},"quick_contact_name":{"type":"string","example":"string","description":"Free-text contact name captured at opportunity creation when no Contact record has been linked yet."},"quick_email":{"type":"string","example":"string","description":"Free-text contact email captured at opportunity creation when no Contact record has been linked yet."},"quick_phone":{"type":"string","example":"string","description":"Free-text contact phone captured at opportunity creation when no Contact record has been linked yet."},"ranking":{"type":"integer","format":"int32","example":1,"description":"Qualitative ranking score (1-10) the user assigns to indicate the strength of the opportunity."},"reason_of_close_description":{"type":"string","example":"string","description":"Free-form note explaining why the opportunity was archived (lost)."},"reason_of_close_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reason of close option selected when the opportunity was archived (lost)."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline step."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"was_qualified":{"type":"boolean","example":false,"description":"True when the opportunity has gone through the qualification step at least once."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"value":{"type":"object","properties":{"base_value":{"type":"number","format":"double","example":"4.32","description":"Value in the base currency of the space. If empty, it is calculated from value_foreign at the current exchange rate."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency of value_foreign."},"value_foreign":{"type":"number","format":"double","example":"4.32","description":"Value in the currency set by currency_id. If empty, it is calculated from base_value at the current exchange rate."}},"description":"Monetary value of the opportunity; send `currency_id` and `base_value`, and `value_foreign` is computed. Without `currency_id` the API answers HTTP 422.","required":["base_value","currency_id"]},"oppty_recurrence":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyRecurrence record."}},"description":"Recurrence schedule generating periodic copies of this opportunity, or empty when no recurrence is set up.\n\nRelated OpptyRecurrence record; see 'createOpptyRecurrenceInput' for its fields."},"revenue_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyRevenueSchedule record."}},"description":"Revenue schedule splitting the opportunity value across periods, or empty when revenue scheduling is not enabled for this opportunity.\n\nRelated OpptyRevenueSchedule record; see 'createOpptyRevenueScheduleInput' for its fields."},"product_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Related OpptyProductRelation record; see 'createOpptyProductRelationInput' for its fields."},"description":"Product line items on this opportunity. Each entry holds the product, quantity, price and discount that contribute to the opportunity value when is_value_auto_calculate is true."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactRelation record."}},"description":"Related LeadOpptyContactRelation record; see 'createLeadOpptyContactRelationInput' for its fields."},"description":"Contacts linked to this opportunity, including their roles and org-chart positions."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyAccountRelation record."}},"description":"Related LeadOpptyAccountRelation record; see 'createLeadOpptyAccountRelationInput' for its fields."},"description":"Accounts linked to this opportunity; required on create, with one relation marked `is_primary: true`, which becomes the primary account. Without it the API answers HTTP 422."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Documents linked to this opportunity."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Quote record."}},"description":"Related Quote record; see 'createQuoteInput' for its fields."},"description":"Quotes prepared for this opportunity."},"won_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of when the opportunity was won. Setting it adjusts the underlying win event; empty for opportunities that have not been won."},"lost_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of when the opportunity was archived (lost). Setting it adjusts the underlying loss event; empty for opportunities that have not been archived."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptySharingSalesUnitRelation record."}},"description":"Related LeadOpptySharingSalesUnitRelation record; see 'createLeadOpptySharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this opportunity. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptySharingClientRelation record."}},"description":"Related LeadOpptySharingClientRelation record; see 'createLeadOpptySharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this opportunity. Editable only when share_mode allows user sharing."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'createTagRelationInput' for its fields."},"description":"Tag labels applied to this opportunity."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'createProfileRelationInput' for its fields."},"description":"Saved view profiles this opportunity currently matches."}},"required":["closing_date","name","owner_id","step_id","value","account_relations"]},"updateOpportunityInput":{"description":"Field values to change on an Opportunity record; fields left out keep their values.","properties":{"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"active_quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote currently synchronized with this opportunity, or empty when no quote is active. A quote can be active on only one opportunity at a time."},"closing_date":{"type":"string","format":"date","example":"2019-01-01","description":"Expected or actual closing date of the opportunity."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this opportunity."},"description":{"type":"string","example":"string","description":"Free-form description of the opportunity."},"is_archived":{"type":"boolean","example":false,"description":"True when the opportunity has been archived (lost). Archived opportunities remain readable but are hidden from active lists and cannot be edited until reactivated."},"is_value_auto_calculate":{"type":"boolean","example":false,"description":"True when value is auto-calculated from the opportunity product line items. False when the user enters value directly."},"label_flag":{"type":"string","example":1,"enum":[1,2,4],"description":"User-set colored flag used to highlight the opportunity in lists and reports.","x-enumDescriptions":{"1":"Marked as a priority.","2":"Marked as hot.","4":"Marked as stalled."}},"last_ai_buying_center_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested buying center was last applied to this opportunity."},"lead_source_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead source the opportunity originated from."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity owner."},"product_currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency used for product line-item prices on this opportunity."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the price list that supplies prices for product line items added to this opportunity, or empty to use catalog defaults."},"product_sections":{"type":"object","description":"Product sections grouping the record's line items, as a JSON array of {\"id\": <UUID>, \"name\": <string>} objects. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProductSection This payload conforms to the `ProductSection` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ProductSection.json","description":"ProductSection JSON Schema"}},"quick_account_email":{"type":"string","example":"string","description":"Free-text company email captured at opportunity creation when no Account record has been linked yet."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name captured at opportunity creation when no Account record has been linked yet."},"quick_account_phone":{"type":"string","example":"string","description":"Free-text company phone captured at opportunity creation when no Account record has been linked yet."},"quick_contact_name":{"type":"string","example":"string","description":"Free-text contact name captured at opportunity creation when no Contact record has been linked yet."},"quick_email":{"type":"string","example":"string","description":"Free-text contact email captured at opportunity creation when no Contact record has been linked yet."},"quick_phone":{"type":"string","example":"string","description":"Free-text contact phone captured at opportunity creation when no Contact record has been linked yet."},"ranking":{"type":"integer","format":"int32","example":1,"description":"Qualitative ranking score (1-10) the user assigns to indicate the strength of the opportunity."},"reason_of_close_description":{"type":"string","example":"string","description":"Free-form note explaining why the opportunity was archived (lost)."},"reason_of_close_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reason of close option selected when the opportunity was archived (lost)."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline step."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"was_qualified":{"type":"boolean","example":false,"description":"True when the opportunity has gone through the qualification step at least once."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"value":{"type":"object","properties":{"base_value":{"type":"number","format":"double","example":"4.32","description":"Value in the base currency of the space. If empty, it is calculated from value_foreign at the current exchange rate."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency of value_foreign."},"value_foreign":{"type":"number","format":"double","example":"4.32","description":"Value in the currency set by currency_id. If empty, it is calculated from base_value at the current exchange rate."}},"required":["base_value","currency_id","value_foreign"],"description":"Monetary value of the opportunity in the team space base currency, with the foreign value and currency code preserved alongside."},"oppty_recurrence":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyRecurrence record."}},"description":"Recurrence schedule generating periodic copies of this opportunity, or empty when no recurrence is set up.\n\nRelated OpptyRecurrence record; see 'updateOpptyRecurrenceInput' for its fields."},"revenue_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyRevenueSchedule record."}},"description":"Revenue schedule splitting the opportunity value across periods, or empty when revenue scheduling is not enabled for this opportunity.\n\nRelated OpptyRevenueSchedule record; see 'updateOpptyRevenueScheduleInput' for its fields."},"product_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Related OpptyProductRelation record; see 'updateOpptyProductRelationInput' for its fields."},"description":"Product line items on this opportunity. Each entry holds the product, quantity, price and discount that contribute to the opportunity value when is_value_auto_calculate is true."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactRelation record."}},"description":"Related LeadOpptyContactRelation record; see 'updateLeadOpptyContactRelationInput' for its fields."},"description":"Contacts linked to this opportunity, including their roles and org-chart positions."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyAccountRelation record."}},"description":"Related LeadOpptyAccountRelation record; see 'updateLeadOpptyAccountRelationInput' for its fields."},"description":"Accounts linked to this opportunity, including the primary-account flag."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this opportunity."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Quote record."}},"description":"Related Quote record; see 'updateQuoteInput' for its fields."},"description":"Quotes prepared for this opportunity."},"won_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of when the opportunity was won. Setting it adjusts the underlying win event; empty for opportunities that have not been won."},"lost_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of when the opportunity was archived (lost). Setting it adjusts the underlying loss event; empty for opportunities that have not been archived."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptySharingSalesUnitRelation record."}},"description":"Related LeadOpptySharingSalesUnitRelation record; see 'updateLeadOpptySharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this opportunity. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptySharingClientRelation record."}},"description":"Related LeadOpptySharingClientRelation record; see 'updateLeadOpptySharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this opportunity. Editable only when share_mode allows user sharing."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this opportunity."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'updateProfileRelationInput' for its fields."},"description":"Saved view profiles this opportunity currently matches."}}},"batchOpportunityInput":{"description":"Field values of an Opportunity record to create, or to update when its id is set.","properties":{"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time."},"active_quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote currently synchronized with this opportunity, or empty when no quote is active. A quote can be active on only one opportunity at a time."},"closing_date":{"type":"string","format":"date","example":"2019-01-01","description":"Expected or actual closing date of the opportunity."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this opportunity."},"description":{"type":"string","example":"string","description":"Free-form description of the opportunity."},"is_archived":{"type":"boolean","example":false,"description":"True when the opportunity has been archived (lost). Archived opportunities remain readable but are hidden from active lists and cannot be edited until reactivated."},"is_value_auto_calculate":{"type":"boolean","example":false,"description":"True when value is auto-calculated from the opportunity product line items. False when the user enters value directly."},"label_flag":{"type":"string","example":1,"enum":[1,2,4],"description":"User-set colored flag used to highlight the opportunity in lists and reports.","x-enumDescriptions":{"1":"Marked as a priority.","2":"Marked as hot.","4":"Marked as stalled."}},"last_ai_buying_center_applied":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Time when an AI-suggested buying center was last applied to this opportunity."},"lead_source_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead source the opportunity originated from."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity owner."},"product_currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency used for product line-item prices on this opportunity."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the price list that supplies prices for product line items added to this opportunity, or empty to use catalog defaults."},"product_sections":{"type":"object","description":"Product sections grouping the record's line items, as a JSON array of {\"id\": <UUID>, \"name\": <string>} objects. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProductSection This payload conforms to the `ProductSection` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ProductSection.json","description":"ProductSection JSON Schema"}},"quick_account_email":{"type":"string","example":"string","description":"Free-text company email captured at opportunity creation when no Account record has been linked yet."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name captured at opportunity creation when no Account record has been linked yet."},"quick_account_phone":{"type":"string","example":"string","description":"Free-text company phone captured at opportunity creation when no Account record has been linked yet."},"quick_contact_name":{"type":"string","example":"string","description":"Free-text contact name captured at opportunity creation when no Contact record has been linked yet."},"quick_email":{"type":"string","example":"string","description":"Free-text contact email captured at opportunity creation when no Contact record has been linked yet."},"quick_phone":{"type":"string","example":"string","description":"Free-text contact phone captured at opportunity creation when no Contact record has been linked yet."},"ranking":{"type":"integer","format":"int32","example":1,"description":"Qualitative ranking score (1-10) the user assigns to indicate the strength of the opportunity."},"reason_of_close_description":{"type":"string","example":"string","description":"Free-form note explaining why the opportunity was archived (lost)."},"reason_of_close_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reason of close option selected when the opportunity was archived (lost)."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline step."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"was_qualified":{"type":"boolean","example":false,"description":"True when the opportunity has gone through the qualification step at least once."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"value":{"type":"object","properties":{"base_value":{"type":"number","format":"double","example":"4.32","description":"Value in the base currency of the space. If empty, it is calculated from value_foreign at the current exchange rate."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency of value_foreign."},"value_foreign":{"type":"number","format":"double","example":"4.32","description":"Value in the currency set by currency_id. If empty, it is calculated from base_value at the current exchange rate."}},"required":["base_value","currency_id","value_foreign"],"description":"Monetary value of the opportunity in the team space base currency, with the foreign value and currency code preserved alongside."},"oppty_recurrence":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyRecurrence record."}},"description":"Recurrence schedule generating periodic copies of this opportunity, or empty when no recurrence is set up.\n\nRelated OpptyRecurrence record; see 'updateOpptyRecurrenceInput' for its fields."},"revenue_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyRevenueSchedule record."}},"description":"Revenue schedule splitting the opportunity value across periods, or empty when revenue scheduling is not enabled for this opportunity.\n\nRelated OpptyRevenueSchedule record; see 'updateOpptyRevenueScheduleInput' for its fields."},"product_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Related OpptyProductRelation record; see 'updateOpptyProductRelationInput' for its fields."},"description":"Product line items on this opportunity. Each entry holds the product, quantity, price and discount that contribute to the opportunity value when is_value_auto_calculate is true."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyContactRelation record."}},"description":"Related LeadOpptyContactRelation record; see 'updateLeadOpptyContactRelationInput' for its fields."},"description":"Contacts linked to this opportunity, including their roles and org-chart positions."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptyAccountRelation record."}},"description":"Related LeadOpptyAccountRelation record; see 'updateLeadOpptyAccountRelationInput' for its fields."},"description":"Accounts linked to this opportunity, including the primary-account flag."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this opportunity."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Quote record."}},"description":"Related Quote record; see 'updateQuoteInput' for its fields."},"description":"Quotes prepared for this opportunity."},"won_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of when the opportunity was won. Setting it adjusts the underlying win event; empty for opportunities that have not been won."},"lost_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of when the opportunity was archived (lost). Setting it adjusts the underlying loss event; empty for opportunities that have not been archived."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptySharingSalesUnitRelation record."}},"description":"Related LeadOpptySharingSalesUnitRelation record; see 'updateLeadOpptySharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this opportunity. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related LeadOpptySharingClientRelation record."}},"description":"Related LeadOpptySharingClientRelation record; see 'updateLeadOpptySharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this opportunity. Editable only when share_mode allows user sharing."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this opportunity."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'updateProfileRelationInput' for its fields."},"description":"Saved view profiles this opportunity currently matches."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OpportunityType":{"description":"Opportunity type that classifies opportunities and defines their forms (edit, qualify, won and lost).","properties":{"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"pipeline":{"type":"string","format":"uri","description":"Pipeline this opportunity type drives. Each opportunity type maps to exactly one pipeline.\n\nRelated Pipeline record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Pipeline' for its fields."},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing opportunities of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost":{"type":"object","description":"JSON definition of the form shown when archiving (losing) an opportunity of this type. Used to capture reason of close and any required closing fields. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_qualify":{"type":"object","description":"JSON definition of the form shown when qualifying a lead into an opportunity of this type."},"form_won":{"type":"object","description":"JSON definition of the form shown when winning an opportunity of this type. Used to capture won-deal fields."},"is_readonly":{"type":"boolean","example":false,"description":"True when the opportunity type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline this opportunity type drives."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"form_edit_api":{"type":"object","description":"Typed, read-only view of a form layout of this type: form_edit_api mirrors the edit form (form_edit), form_lost_api the form shown when archiving as lost (form_lost)."},"can_change_readonly":{"type":"boolean","example":false,"description":"False for types whose read-only setting is fixed, such as the recurrent appointment type; true otherwise."},"form_lost_api":{"type":"object","description":"Typed, read-only view of a form layout of this type: form_edit_api mirrors the edit form (form_edit), form_lost_api the form shown when archiving as lost (form_lost)."},"form_qualify_api":{"type":"array","items":{"type":"object"},"description":"Ids of the fields shown on the form when a lead is qualified into an opportunity of this type. Read-only view of `formQualify`."},"form_won_api":{"type":"array","items":{"type":"object"},"description":"Ids of the fields shown on the form when an opportunity of this type is won. Read-only view of `formWon`."}},"required":["id","pipeline","is_readonly","name","pipeline_id","settings","has_draft","is_delete_protected","form_edit_api","form_lost_api","form_qualify_api","form_won_api"]},"createOpportunityTypeInput":{"description":"Field values of a new OpportunityType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing opportunities of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost":{"type":"object","description":"JSON definition of the form shown when archiving (losing) an opportunity of this type. Used to capture reason of close and any required closing fields. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_qualify":{"type":"object","description":"JSON definition of the form shown when qualifying a lead into an opportunity of this type."},"form_won":{"type":"object","description":"JSON definition of the form shown when winning an opportunity of this type. Used to capture won-deal fields."},"is_readonly":{"type":"boolean","example":false,"description":"True when the opportunity type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline this opportunity type drives."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_readonly","name","pipeline_id","settings"]},"updateOpportunityTypeInput":{"description":"Field values to change on an OpportunityType record; fields left out keep their values.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing opportunities of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost":{"type":"object","description":"JSON definition of the form shown when archiving (losing) an opportunity of this type. Used to capture reason of close and any required closing fields. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_qualify":{"type":"object","description":"JSON definition of the form shown when qualifying a lead into an opportunity of this type."},"form_won":{"type":"object","description":"JSON definition of the form shown when winning an opportunity of this type. Used to capture won-deal fields."},"is_readonly":{"type":"boolean","example":false,"description":"True when the opportunity type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline this opportunity type drives."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchOpportunityTypeInput":{"description":"Field values of an OpportunityType record to create, or to update when its id is set.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing opportunities of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost":{"type":"object","description":"JSON definition of the form shown when archiving (losing) an opportunity of this type. Used to capture reason of close and any required closing fields. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_qualify":{"type":"object","description":"JSON definition of the form shown when qualifying a lead into an opportunity of this type."},"form_won":{"type":"object","description":"JSON definition of the form shown when winning an opportunity of this type. Used to capture won-deal fields."},"is_readonly":{"type":"boolean","example":false,"description":"True when the opportunity type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline this opportunity type drives."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OpptyProductRelation":{"description":"Product line item on an opportunity or quote, with its quantity, price and discount.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"currency_exchange_rates_list":{"type":"string","format":"uri","description":"Currency exchange rate list used to convert this line item, inherited from the parent opportunity or quote.\n\nRelated CurrencyExchangeRatesList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRatesList' for its fields."},"online_form_field":{"type":"string","format":"uri","description":"Online form field that produced this line item, or empty when not applicable.\n\nRelated Field record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Field' for its fields."},"online_form":{"type":"string","format":"uri","description":"Online form this line item came from when the related opportunity was created through a form submission, or empty otherwise.\n\nRelated OnlineForm record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OnlineForm' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity this line item belongs to. Set on create; mutually exclusive with quote.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields.","readOnly":true},"oppty_product_relation_type":{"type":"string","format":"uri","description":"Line-item type that drives the form layout for this product line. Resolved from the product type on create.\n\nRelated OpptyProductRelationType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyProductRelationType' for its fields."},"paired_oppty_product_relation":{"type":"string","format":"uri","description":"Counterpart line item on the paired record (e.g. matching line on the active quote when this line is on the opportunity, or vice versa). Empty when there is no pairing.\n\nRelated OpptyProductRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyProductRelation' for its fields."},"product":{"type":"string","format":"uri","description":"Product on this line item. Set on create; cannot be changed afterwards.\n\nRelated Product record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Product' for its fields.","readOnly":true},"quote":{"type":"string","format":"uri","description":"Quote this line item belongs to. Set on create; mutually exclusive with opportunity.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"amount":{"type":"number","format":"double","example":"4.32","description":"Total amount of the line item (price * quantity, with discounts applied)."},"comment":{"type":"string","example":"string","description":"Free-form note describing this line item."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list used to convert this line item, inherited from the parent opportunity or quote."},"online_form_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form field in which the respondent selected this product, or empty when the line item did not come from a form submission."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form submission this line item came from, or empty when it was not created through a form."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity."},"oppty_product_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the line-item type."},"paired_oppty_product_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the paired line item."},"price":{"type":"number","format":"double","example":"4.32","description":"Per-unit price of the line item. Defaults to the product price from the price list when not supplied explicitly."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product; required on create."},"quantity":{"type":"number","format":"double","example":"4.32","description":"Number of product units on this line item; a line item created without it gets 1."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote this line item belongs to. Mutually exclusive with oppty_id."},"section_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier of the product section this line belongs to (see the product_sections JSON layout on the parent opportunity or quote)."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Display order of the line item within its section. Maintained automatically when lines are added or moved."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"revenue_schedule":{"type":"string","format":"uri","description":"Per-line revenue schedule splitting the line amount across periods. Available only when revenue scheduling is configured at product-amount level.\n\nRelated OpptyProductRelationRevenueSchedule record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyProductRelationRevenueSchedule' for its fields."},"discount_value":{"type":"number","format":"double","example":4.32,"description":"Absolute discount of this line item against the product's price-list price, computed: a write that sends it is refused with HTTP 400, code 117. Set `price` instead.","readOnly":true},"discount_percentage":{"type":"number","format":"double","example":4.32,"description":"Percentage discount of this line item against the product's price-list price, computed: a write that sends it is refused with HTTP 400, code 117. Set `price` instead.","readOnly":true},"modified_by_user":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent modification made by an end user (excluding system changes). Read-only; computed by Coevera."}},"required":["is_delete_protected","id","oppty_product_relation_type","product","product_id"]},"createOpptyProductRelationInput":{"description":"Field values of a new OpptyProductRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"paired_oppty_product_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Counterpart line item on the paired record (e.g. matching line on the active quote when this line is on the opportunity, or vice versa). Empty when there is no pairing.\n\nRelated OpptyProductRelation record; see 'createOpptyProductRelationInput' for its fields."},"amount":{"type":"number","format":"double","example":"4.32","description":"Total amount of the line item (price * quantity, with discounts applied)."},"comment":{"type":"string","example":"string","description":"Free-form note describing this line item."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list used to convert this line item, inherited from the parent opportunity or quote."},"online_form_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form field in which the respondent selected this product, or empty when the line item did not come from a form submission."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form submission this line item came from, or empty when it was not created through a form."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity."},"oppty_product_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the line-item type."},"paired_oppty_product_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the paired line item."},"price":{"type":"number","format":"double","example":"4.32","description":"Per-unit price of the line item. Defaults to the product price from the price list when not supplied explicitly."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product on this line item. Set on create; cannot be changed afterwards."},"quantity":{"type":"number","format":"double","example":"4.32","description":"Number of product units on this line item; a line item created without it gets 1.","default":1},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote this line item belongs to. Mutually exclusive with oppty_id."},"section_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier of the product section this line belongs to (see the product_sections JSON layout on the parent opportunity or quote)."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Display order of the line item within its section. Maintained automatically when lines are added or moved."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"revenue_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelationRevenueSchedule record."}},"description":"Per-line revenue schedule splitting the line amount across periods. Available only when revenue scheduling is configured at product-amount level.\n\nRelated OpptyProductRelationRevenueSchedule record; see 'createOpptyProductRelationRevenueScheduleInput' for its fields."}},"required":["product_id"]},"updateOpptyProductRelationInput":{"description":"Field values to change on an OpptyProductRelation record; fields left out keep their values.","properties":{"paired_oppty_product_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Counterpart line item on the paired record (e.g. matching line on the active quote when this line is on the opportunity, or vice versa). Empty when there is no pairing.\n\nRelated OpptyProductRelation record; see 'updateOpptyProductRelationInput' for its fields."},"amount":{"type":"number","format":"double","example":"4.32","description":"Total amount of the line item (price * quantity, with discounts applied)."},"comment":{"type":"string","example":"string","description":"Free-form note describing this line item."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list used to convert this line item, inherited from the parent opportunity or quote."},"online_form_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form field in which the respondent selected this product, or empty when the line item did not come from a form submission."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form submission this line item came from, or empty when it was not created through a form."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity."},"oppty_product_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the line-item type."},"paired_oppty_product_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the paired line item."},"price":{"type":"number","format":"double","example":"4.32","description":"Per-unit price of the line item. Defaults to the product price from the price list when not supplied explicitly."},"quantity":{"type":"number","format":"double","example":"4.32","description":"Number of product units on this line item."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote this line item belongs to. Mutually exclusive with oppty_id."},"section_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier of the product section this line belongs to (see the product_sections JSON layout on the parent opportunity or quote)."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Display order of the line item within its section. Maintained automatically when lines are added or moved."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"revenue_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelationRevenueSchedule record."}},"description":"Per-line revenue schedule splitting the line amount across periods. Available only when revenue scheduling is configured at product-amount level.\n\nRelated OpptyProductRelationRevenueSchedule record; see 'updateOpptyProductRelationRevenueScheduleInput' for its fields."}}},"batchOpptyProductRelationInput":{"description":"Field values of an OpptyProductRelation record to create, or to update when its id is set.","properties":{"paired_oppty_product_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Counterpart line item on the paired record (e.g. matching line on the active quote when this line is on the opportunity, or vice versa). Empty when there is no pairing.\n\nRelated OpptyProductRelation record; see 'updateOpptyProductRelationInput' for its fields."},"amount":{"type":"number","format":"double","example":"4.32","description":"Total amount of the line item (price * quantity, with discounts applied)."},"comment":{"type":"string","example":"string","description":"Free-form note describing this line item."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list used to convert this line item, inherited from the parent opportunity or quote."},"online_form_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form field in which the respondent selected this product, or empty when the line item did not come from a form submission."},"online_form_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the online form submission this line item came from, or empty when it was not created through a form."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity."},"oppty_product_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the line-item type."},"paired_oppty_product_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the paired line item."},"price":{"type":"number","format":"double","example":"4.32","description":"Per-unit price of the line item. Defaults to the product price from the price list when not supplied explicitly."},"quantity":{"type":"number","format":"double","example":"4.32","description":"Number of product units on this line item."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote this line item belongs to. Mutually exclusive with oppty_id."},"section_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier of the product section this line belongs to (see the product_sections JSON layout on the parent opportunity or quote)."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Display order of the line item within its section. Maintained automatically when lines are added or moved."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"revenue_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelationRevenueSchedule record."}},"description":"Per-line revenue schedule splitting the line amount across periods. Available only when revenue scheduling is configured at product-amount level.\n\nRelated OpptyProductRelationRevenueSchedule record; see 'updateOpptyProductRelationRevenueScheduleInput' for its fields."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OpptyProductRelationDataExRelation":{"description":"Option selected in a multi-select checkbox field of a product line item.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"data":{"type":"string","format":"uri","description":"Option selected in the multi-select field; it belongs to the data set given by data_set_id.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"oppty_product_relation":{"type":"string","format":"uri","description":"Product line item on which the option is selected.\n\nRelated OpptyProductRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyProductRelation' for its fields."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"oppty_product_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product line item."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","data","oppty_product_relation","data_id","data_set_id","oppty_product_relation_id"]},"createOpptyProductRelationDataExRelationInput":{"description":"Field values of a new OpptyProductRelationDataExRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"oppty_product_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Product line item on which the option is selected.\n\nRelated OpptyProductRelation record; see 'createOpptyProductRelationInput' for its fields."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"oppty_product_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product line item."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["oppty_product_relation","data_id","data_set_id","oppty_product_relation_id"]},"updateOpptyProductRelationDataExRelationInput":{"description":"Field values to change on an OpptyProductRelationDataExRelation record; fields left out keep their values.","properties":{"oppty_product_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Product line item on which the option is selected.\n\nRelated OpptyProductRelation record; see 'updateOpptyProductRelationInput' for its fields."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"oppty_product_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product line item."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchOpptyProductRelationDataExRelationInput":{"description":"Field values of an OpptyProductRelationDataExRelation record to create, or to update when its id is set.","properties":{"oppty_product_relation":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Product line item on which the option is selected.\n\nRelated OpptyProductRelation record; see 'updateOpptyProductRelationInput' for its fields."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"oppty_product_relation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product line item."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OpptyProductRelationRevenueSchedule":{"description":"Revenue schedule that splits the amount of a product line item into periods.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity. Must match with OpptyProductRelation id.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted."},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"cancelation_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the revenue schedule was cancelled. Empty for active schedules."},"period_count":{"type":"integer","format":"int32","example":1,"description":"Number of periods the line-item amount is split into."},"period_type":{"type":"integer","description":"Length of each period (e.g. Monthly, Quarterly, Yearly).\n\nInteger enum value: 1 - Month, 2 - Quarter, 3 - Year","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Revenue is split into monthly periods.","2":"Revenue is split into quarterly periods.","3":"Revenue is split into yearly periods."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when revenue recognition for this product line begins."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"periods":{"type":"array","items":{"type":"string","format":"uri","description":"Related OpptyProductRelationRevenueSchedulePeriod record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyProductRelationRevenueSchedulePeriod' for its fields."},"description":"Periods produced by this revenue schedule, ordered by date."}},"required":["is_delete_protected","id"]},"createOpptyProductRelationRevenueScheduleInput":{"description":"Field values of a new OpptyProductRelationRevenueSchedule record.","properties":{"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity. Must match with OpptyProductRelation id.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted."},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"cancelation_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the revenue schedule was cancelled. Empty for active schedules."},"period_count":{"type":"integer","format":"int32","example":1,"description":"Number of periods the line-item amount is split into."},"period_type":{"type":"integer","description":"Length of each period (e.g. Monthly, Quarterly, Yearly).\n\nInteger enum value: 1 - Month, 2 - Quarter, 3 - Year","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Revenue is split into monthly periods.","2":"Revenue is split into quarterly periods.","3":"Revenue is split into yearly periods."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when revenue recognition for this product line begins."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["id"]},"updateOpptyProductRelationRevenueScheduleInput":{"description":"Field values to change on an OpptyProductRelationRevenueSchedule record; fields left out keep their values.","properties":{"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted."},"cancelation_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the revenue schedule was cancelled. Empty for active schedules."},"period_count":{"type":"integer","format":"int32","example":1,"description":"Number of periods the line-item amount is split into."},"period_type":{"type":"integer","description":"Length of each period (e.g. Monthly, Quarterly, Yearly).\n\nInteger enum value: 1 - Month, 2 - Quarter, 3 - Year","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Revenue is split into monthly periods.","2":"Revenue is split into quarterly periods.","3":"Revenue is split into yearly periods."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when revenue recognition for this product line begins."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchOpptyProductRelationRevenueScheduleInput":{"description":"Field values of an OpptyProductRelationRevenueSchedule record to create, or to update when its id is set.","properties":{"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted."},"cancelation_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the revenue schedule was cancelled. Empty for active schedules."},"period_count":{"type":"integer","format":"int32","example":1,"description":"Number of periods the line-item amount is split into."},"period_type":{"type":"integer","description":"Length of each period (e.g. Monthly, Quarterly, Yearly).\n\nInteger enum value: 1 - Month, 2 - Quarter, 3 - Year","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Revenue is split into monthly periods.","2":"Revenue is split into quarterly periods.","3":"Revenue is split into yearly periods."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when revenue recognition for this product line begins."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OpptyProductRelationRevenueSchedulePeriod":{"description":"One period of a product line item revenue schedule, with its date and amount.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"oppty_product_relation_revenue_schedule":{"type":"string","format":"uri","description":"Parent revenue schedule this period belongs to.\n\nRelated OpptyProductRelationRevenueSchedule record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyProductRelationRevenueSchedule' for its fields."},"date":{"type":"string","format":"date","example":"2019-01-01","description":"Recognition date of this period."},"oppty_product_relation_revenue_schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent revenue schedule."},"transaction_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier linking the period to the recognition transaction."},"value":{"type":"number","format":"double","example":4.32,"description":"Amount recognised in this period."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","oppty_product_relation_revenue_schedule","oppty_product_relation_revenue_schedule_id","transaction_id"]},"createOpptyProductRelationRevenueSchedulePeriodInput":{"description":"Field values of a new OpptyProductRelationRevenueSchedulePeriod record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"oppty_product_relation_revenue_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelationRevenueSchedule record."}},"description":"Parent revenue schedule this period belongs to.\n\nRelated OpptyProductRelationRevenueSchedule record; see 'createOpptyProductRelationRevenueScheduleInput' for its fields."},"date":{"type":"string","format":"date","example":"2019-01-01","description":"Recognition date of this period."},"oppty_product_relation_revenue_schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent revenue schedule."},"transaction_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier linking the period to the recognition transaction."},"value":{"type":"number","format":"double","example":4.32,"description":"Amount recognised in this period."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["oppty_product_relation_revenue_schedule","oppty_product_relation_revenue_schedule_id","transaction_id"]},"updateOpptyProductRelationRevenueSchedulePeriodInput":{"description":"Field values to change on an OpptyProductRelationRevenueSchedulePeriod record; fields left out keep their values.","properties":{"oppty_product_relation_revenue_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelationRevenueSchedule record."}},"description":"Parent revenue schedule this period belongs to.\n\nRelated OpptyProductRelationRevenueSchedule record; see 'updateOpptyProductRelationRevenueScheduleInput' for its fields."},"date":{"type":"string","format":"date","example":"2019-01-01","description":"Recognition date of this period."},"oppty_product_relation_revenue_schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent revenue schedule."},"transaction_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier linking the period to the recognition transaction."},"value":{"type":"number","format":"double","example":4.32,"description":"Amount recognised in this period."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchOpptyProductRelationRevenueSchedulePeriodInput":{"description":"Field values of an OpptyProductRelationRevenueSchedulePeriod record to create, or to update when its id is set.","properties":{"oppty_product_relation_revenue_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelationRevenueSchedule record."}},"description":"Parent revenue schedule this period belongs to.\n\nRelated OpptyProductRelationRevenueSchedule record; see 'updateOpptyProductRelationRevenueScheduleInput' for its fields."},"date":{"type":"string","format":"date","example":"2019-01-01","description":"Recognition date of this period."},"oppty_product_relation_revenue_schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent revenue schedule."},"transaction_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier linking the period to the recognition transaction."},"value":{"type":"number","format":"double","example":4.32,"description":"Amount recognised in this period."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OpptyProductRelationType":{"description":"Line-item type that defines the form of product line items on opportunities and quotes; paired with a product type.","properties":{"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"form_edit_api":{"type":"object","description":"Typed, read-only view of a form layout of this type: form_edit_api mirrors the edit form (form_edit), form_lost_api the form shown when archiving as lost (form_lost)."},"can_change_readonly":{"type":"boolean","example":false,"description":"False for types whose read-only setting is fixed, such as the recurrent appointment type; true otherwise."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when adding line items of this type to opportunities or quotes. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the line-item type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"product_type":{"type":"string","format":"uri","description":"Product type paired with this line-item type.\n\nRelated ProductType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProductType' for its fields."},"product_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the paired product type. Read-only."}},"required":["has_draft","is_delete_protected","form_edit_api","id","is_readonly","name","product_type","product_type_id"]},"createOpptyProductRelationTypeInput":{"description":"Field values of a new OpptyProductRelationType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when adding line items of this type to opportunities or quotes. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the line-item type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_readonly","name"]},"updateOpptyProductRelationTypeInput":{"description":"Field values to change on an OpptyProductRelationType record; fields left out keep their values.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when adding line items of this type to opportunities or quotes. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the line-item type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchOpptyProductRelationTypeInput":{"description":"Field values of an OpptyProductRelationType record to create, or to update when its id is set.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when adding line items of this type to opportunities or quotes. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the line-item type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OpptyRecurrence":{"description":"Recurrence rule that creates new copies of an opportunity on a schedule, e.g. for repeat deals once it is won or lost.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"oppty":{"type":"string","format":"uri","description":"Opportunity this recurrence belongs to. Each recurrence is bound to exactly one opportunity.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"step":{"type":"string","format":"uri","description":"Pipeline step that newly generated opportunities are placed in.\n\nRelated Step record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Step' for its fields."},"condition":{"type":"string","example":1,"enum":[1,2],"description":"Bit Flag field, with limited combination of integer values.\n\nOptions:\nWon = 1 (0b01)\nLost = 2 (0b10) It is required if the recurrence is set. Conditionally generated opportunity as bitwise operation where bit: 1 bit - won 2 bit - loste.g. if the value is 1 => to generate only when opportunity is won.","x-enumDescriptions":{"1":"The next opportunity is created when the current one is won.","2":"The next opportunity is created when the current one is lost."}},"day":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The day of the month. This setting is applicable only for RecurrenceTypeEnum.MonthlyRelative and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Day1, 2 - Day2, 3 - Day3, 4 - Day4, 5 - Day5, 6 - Day6, 7 - Day7, 8 - Day8, 9 - Day9, 10 - Day10, 11 - Day11, 12 - Day12, 13 - Day13, 14 - Day14, 15 - Day15, 16 - Day16, 17 - Day17, 18 - Day18, 19 - Day19, 20 - Day20, 21 - Day21, 22 - Day22, 23 - Day23, 24 - Day24, 25 - Day25, 26 - Day26, 27 - Day27, 28 - Day28, 29 - Day29, 30 - Day30, 31 - Day31","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],"x-enumDescriptions":{"1":"Day 1 of the month.","2":"Day 2 of the month.","3":"Day 3 of the month.","4":"Day 4 of the month.","5":"Day 5 of the month.","6":"Day 6 of the month.","7":"Day 7 of the month.","8":"Day 8 of the month.","9":"Day 9 of the month.","10":"Day 10 of the month.","11":"Day 11 of the month.","12":"Day 12 of the month.","13":"Day 13 of the month.","14":"Day 14 of the month.","15":"Day 15 of the month.","16":"Day 16 of the month.","17":"Day 17 of the month.","18":"Day 18 of the month.","19":"Day 19 of the month.","20":"Day 20 of the month.","21":"Day 21 of the month.","22":"Day 22 of the month.","23":"Day 23 of the month.","24":"Day 24 of the month.","25":"Day 25 of the month.","26":"Day 26 of the month.","27":"Day 27 of the month.","28":"Day 28 of the month.","29":"Day 29 of the month.","30":"Day 30 of the month.","31":"Day 31 of the month."}},"day_of_week":{"type":"string","example":1,"enum":[1,2,4,8,16,32,64],"description":"Bit Flag field, with limited combination of integer values.\n\nOptions:\nSunday = 1 (0b0000001)\nMonday = 2 (0b0000010)\nTuesday = 4 (0b0000100)\nWednesday = 8 (0b0001000)\nThursday = 16 (0b0010000)\nFriday = 32 (0b0100000)\nSaturday = 64 (0b1000000) The days of week in bit mask, number where every bit means one day (e.g. 0010001 = every Monday and Friday), bit 0 is Monday. This setting is applicable only for RecurrenceTypeEnum.Weekly, RecurrenceTypeEnum.MonthlyAbsolute, RecurrenceTypeEnum.YearlyAbsolute.","x-enumDescriptions":{"1":"Sunday.","2":"Monday.","4":"Tuesday.","8":"Wednesday.","16":"Thursday.","32":"Friday.","64":"Saturday."}},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The last date when no more other items should be created."},"month":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The number of month this setting is applicable only     for RecurrenceTypeEnum.YearlyAbsolute and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Month1, 2 - Month2, 3 - Month3, 4 - Month4, 5 - Month5, 6 - Month6, 7 - Month7, 8 - Month8, 9 - Month9, 10 - Month10, 11 - Month11, 12 - Month12","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"January.","2":"February.","3":"March.","4":"April.","5":"May.","6":"June.","7":"July.","8":"August.","9":"September.","10":"October.","11":"November.","12":"December."}},"occur_every":{"type":"integer","format":"int32","example":1,"description":"The number of units of a given recurrence type between occurrences according to RecurrenceTypeEnum."},"occurrences_count":{"type":"integer","format":"int32","example":1,"description":"Whole natural number. The number of remaining occurrences. Each time a new     one is created, it decreases. When item is set to 1, only last one can be created. If it is set to 0,     recurrence is stopped. If -1, no limits are applied."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent opportunity."},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The effective start date of recurrence, which means each     next recurrence must be on or after this date."},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline step the opportunities created by the recurrence start in."},"type":{"type":"integer","description":"Recurrence cadence (e.g. Daily, Weekly, MonthlyAbsolute, MonthlyRelative, YearlyAbsolute, YearlyRelative).\n\nInteger enum value: 0 - NotSet, 1 - Daily, 2 - Weekly, 3 - MonthlyRelative, 4 - MonthlyAbsolute, 5 - YearlyRelative, 6 - YearlyAbsolute, 7 - AfterNDays, 8 - AfterNWeeks, 9 - AfterNMonths, 10 - AfterNYears","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10],"x-enumDescriptions":{"0":"No recurrence; no further items are created.","1":"Repeats every occurEvery days on a fixed schedule.","2":"Repeats every occurEvery weeks on the weekdays set in dayOfWeek.","3":"Repeats every occurEvery months on a fixed day of the month given by day.","4":"Repeats every occurEvery months on a given weekday of a given week of the month (week and dayOfWeek), for example the last Friday.","5":"Repeats every year on a fixed date given by month and day.","6":"Repeats every year on a given weekday of a given week in a given month (month, week and dayOfWeek).","7":"Creates the next item occurEvery days after the current one is completed.","8":"Creates the next item occurEvery weeks after the current one is completed.","9":"Creates the next item occurEvery months after the current one is completed.","10":"Creates the next item occurEvery years after the current one is completed."}},"week":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The week of month. This setting is applicable only     for RecurrenceTypeEnum.MonthlyAbsolute and RecurrenceTypeEnum.YearlyAbsolute.\n\nInteger enum value: -1 - WeekLast, 1 - Week1, 2 - Week2, 3 - Week3, 4 - Week4","example":-1,"enum":[-1,1,2,3,4],"x-enumDescriptions":{"1":"The first occurrence of the selected weekday in the month.","2":"The second occurrence of the selected weekday in the month.","3":"The third occurrence of the selected weekday in the month.","4":"The fourth occurrence of the selected weekday in the month.","-1":"The last occurrence of the selected weekday in the month."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","oppty","oppty_id","start_date","step_id"]},"createOpptyRecurrenceInput":{"description":"Field values of a new OpptyRecurrence record.","properties":{"apply_recurrence":{"type":"boolean","example":false,"description":"Default true. When set, then reccurence will apply when other conditions passed. With the value false (e.g. when skip button is used) then recurrence will not apply"},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"condition":{"type":"string","example":1,"enum":[1,2],"description":"Bit Flag field, with limited combination of integer values.\n\nOptions:\nWon = 1 (0b01)\nLost = 2 (0b10) It is required if the recurrence is set. Conditionally generated opportunity as bitwise operation where bit: 1 bit - won 2 bit - loste.g. if the value is 1 => to generate only when opportunity is won.","x-enumDescriptions":{"1":"The next opportunity is created when the current one is won.","2":"The next opportunity is created when the current one is lost."}},"day":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The day of the month. This setting is applicable only for RecurrenceTypeEnum.MonthlyRelative and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Day1, 2 - Day2, 3 - Day3, 4 - Day4, 5 - Day5, 6 - Day6, 7 - Day7, 8 - Day8, 9 - Day9, 10 - Day10, 11 - Day11, 12 - Day12, 13 - Day13, 14 - Day14, 15 - Day15, 16 - Day16, 17 - Day17, 18 - Day18, 19 - Day19, 20 - Day20, 21 - Day21, 22 - Day22, 23 - Day23, 24 - Day24, 25 - Day25, 26 - Day26, 27 - Day27, 28 - Day28, 29 - Day29, 30 - Day30, 31 - Day31","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],"x-enumDescriptions":{"1":"Day 1 of the month.","2":"Day 2 of the month.","3":"Day 3 of the month.","4":"Day 4 of the month.","5":"Day 5 of the month.","6":"Day 6 of the month.","7":"Day 7 of the month.","8":"Day 8 of the month.","9":"Day 9 of the month.","10":"Day 10 of the month.","11":"Day 11 of the month.","12":"Day 12 of the month.","13":"Day 13 of the month.","14":"Day 14 of the month.","15":"Day 15 of the month.","16":"Day 16 of the month.","17":"Day 17 of the month.","18":"Day 18 of the month.","19":"Day 19 of the month.","20":"Day 20 of the month.","21":"Day 21 of the month.","22":"Day 22 of the month.","23":"Day 23 of the month.","24":"Day 24 of the month.","25":"Day 25 of the month.","26":"Day 26 of the month.","27":"Day 27 of the month.","28":"Day 28 of the month.","29":"Day 29 of the month.","30":"Day 30 of the month.","31":"Day 31 of the month."}},"day_of_week":{"type":"string","example":1,"enum":[1,2,4,8,16,32,64],"description":"Bit Flag field, with limited combination of integer values.\n\nOptions:\nSunday = 1 (0b0000001)\nMonday = 2 (0b0000010)\nTuesday = 4 (0b0000100)\nWednesday = 8 (0b0001000)\nThursday = 16 (0b0010000)\nFriday = 32 (0b0100000)\nSaturday = 64 (0b1000000) The days of week in bit mask, number where every bit means one day (e.g. 0010001 = every Monday and Friday), bit 0 is Monday. This setting is applicable only for RecurrenceTypeEnum.Weekly, RecurrenceTypeEnum.MonthlyAbsolute, RecurrenceTypeEnum.YearlyAbsolute.","x-enumDescriptions":{"1":"Sunday.","2":"Monday.","4":"Tuesday.","8":"Wednesday.","16":"Thursday.","32":"Friday.","64":"Saturday."}},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The last date when no more other items should be created."},"month":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The number of month this setting is applicable only     for RecurrenceTypeEnum.YearlyAbsolute and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Month1, 2 - Month2, 3 - Month3, 4 - Month4, 5 - Month5, 6 - Month6, 7 - Month7, 8 - Month8, 9 - Month9, 10 - Month10, 11 - Month11, 12 - Month12","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"January.","2":"February.","3":"March.","4":"April.","5":"May.","6":"June.","7":"July.","8":"August.","9":"September.","10":"October.","11":"November.","12":"December."}},"occur_every":{"type":"integer","format":"int32","example":1,"description":"The number of units of a given recurrence type between occurrences according to RecurrenceTypeEnum."},"occurrences_count":{"type":"integer","format":"int32","example":1,"description":"Whole natural number. The number of remaining occurrences. Each time a new     one is created, it decreases. When item is set to 1, only last one can be created. If it is set to 0,     recurrence is stopped. If -1, no limits are applied."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent opportunity."},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The effective start date of recurrence, which means each     next recurrence must be on or after this date."},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline step the opportunities created by the recurrence start in."},"type":{"type":"integer","description":"Recurrence cadence (e.g. Daily, Weekly, MonthlyAbsolute, MonthlyRelative, YearlyAbsolute, YearlyRelative).\n\nInteger enum value: 0 - NotSet, 1 - Daily, 2 - Weekly, 3 - MonthlyRelative, 4 - MonthlyAbsolute, 5 - YearlyRelative, 6 - YearlyAbsolute, 7 - AfterNDays, 8 - AfterNWeeks, 9 - AfterNMonths, 10 - AfterNYears","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10],"x-enumDescriptions":{"0":"No recurrence; no further items are created.","1":"Repeats every occurEvery days on a fixed schedule.","2":"Repeats every occurEvery weeks on the weekdays set in dayOfWeek.","3":"Repeats every occurEvery months on a fixed day of the month given by day.","4":"Repeats every occurEvery months on a given weekday of a given week of the month (week and dayOfWeek), for example the last Friday.","5":"Repeats every year on a fixed date given by month and day.","6":"Repeats every year on a given weekday of a given week in a given month (month, week and dayOfWeek).","7":"Creates the next item occurEvery days after the current one is completed.","8":"Creates the next item occurEvery weeks after the current one is completed.","9":"Creates the next item occurEvery months after the current one is completed.","10":"Creates the next item occurEvery years after the current one is completed."}},"week":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The week of month. This setting is applicable only     for RecurrenceTypeEnum.MonthlyAbsolute and RecurrenceTypeEnum.YearlyAbsolute.\n\nInteger enum value: -1 - WeekLast, 1 - Week1, 2 - Week2, 3 - Week3, 4 - Week4","example":-1,"enum":[-1,1,2,3,4],"x-enumDescriptions":{"1":"The first occurrence of the selected weekday in the month.","2":"The second occurrence of the selected weekday in the month.","3":"The third occurrence of the selected weekday in the month.","4":"The fourth occurrence of the selected weekday in the month.","-1":"The last occurrence of the selected weekday in the month."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["oppty_id","start_date","step_id"]},"updateOpptyRecurrenceInput":{"description":"Field values to change on an OpptyRecurrence record; fields left out keep their values.","properties":{"apply_recurrence":{"type":"boolean","example":false,"description":"Default true. When set, then reccurence will apply when other conditions passed. With the value false (e.g. when skip button is used) then recurrence will not apply"},"condition":{"type":"string","example":1,"enum":[1,2],"description":"Bit Flag field, with limited combination of integer values.\n\nOptions:\nWon = 1 (0b01)\nLost = 2 (0b10) It is required if the recurrence is set. Conditionally generated opportunity as bitwise operation where bit: 1 bit - won 2 bit - loste.g. if the value is 1 => to generate only when opportunity is won.","x-enumDescriptions":{"1":"The next opportunity is created when the current one is won.","2":"The next opportunity is created when the current one is lost."}},"day":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The day of the month. This setting is applicable only for RecurrenceTypeEnum.MonthlyRelative and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Day1, 2 - Day2, 3 - Day3, 4 - Day4, 5 - Day5, 6 - Day6, 7 - Day7, 8 - Day8, 9 - Day9, 10 - Day10, 11 - Day11, 12 - Day12, 13 - Day13, 14 - Day14, 15 - Day15, 16 - Day16, 17 - Day17, 18 - Day18, 19 - Day19, 20 - Day20, 21 - Day21, 22 - Day22, 23 - Day23, 24 - Day24, 25 - Day25, 26 - Day26, 27 - Day27, 28 - Day28, 29 - Day29, 30 - Day30, 31 - Day31","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],"x-enumDescriptions":{"1":"Day 1 of the month.","2":"Day 2 of the month.","3":"Day 3 of the month.","4":"Day 4 of the month.","5":"Day 5 of the month.","6":"Day 6 of the month.","7":"Day 7 of the month.","8":"Day 8 of the month.","9":"Day 9 of the month.","10":"Day 10 of the month.","11":"Day 11 of the month.","12":"Day 12 of the month.","13":"Day 13 of the month.","14":"Day 14 of the month.","15":"Day 15 of the month.","16":"Day 16 of the month.","17":"Day 17 of the month.","18":"Day 18 of the month.","19":"Day 19 of the month.","20":"Day 20 of the month.","21":"Day 21 of the month.","22":"Day 22 of the month.","23":"Day 23 of the month.","24":"Day 24 of the month.","25":"Day 25 of the month.","26":"Day 26 of the month.","27":"Day 27 of the month.","28":"Day 28 of the month.","29":"Day 29 of the month.","30":"Day 30 of the month.","31":"Day 31 of the month."}},"day_of_week":{"type":"string","example":1,"enum":[1,2,4,8,16,32,64],"description":"Bit Flag field, with limited combination of integer values.\n\nOptions:\nSunday = 1 (0b0000001)\nMonday = 2 (0b0000010)\nTuesday = 4 (0b0000100)\nWednesday = 8 (0b0001000)\nThursday = 16 (0b0010000)\nFriday = 32 (0b0100000)\nSaturday = 64 (0b1000000) The days of week in bit mask, number where every bit means one day (e.g. 0010001 = every Monday and Friday), bit 0 is Monday. This setting is applicable only for RecurrenceTypeEnum.Weekly, RecurrenceTypeEnum.MonthlyAbsolute, RecurrenceTypeEnum.YearlyAbsolute.","x-enumDescriptions":{"1":"Sunday.","2":"Monday.","4":"Tuesday.","8":"Wednesday.","16":"Thursday.","32":"Friday.","64":"Saturday."}},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The last date when no more other items should be created."},"month":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The number of month this setting is applicable only     for RecurrenceTypeEnum.YearlyAbsolute and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Month1, 2 - Month2, 3 - Month3, 4 - Month4, 5 - Month5, 6 - Month6, 7 - Month7, 8 - Month8, 9 - Month9, 10 - Month10, 11 - Month11, 12 - Month12","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"January.","2":"February.","3":"March.","4":"April.","5":"May.","6":"June.","7":"July.","8":"August.","9":"September.","10":"October.","11":"November.","12":"December."}},"occur_every":{"type":"integer","format":"int32","example":1,"description":"The number of units of a given recurrence type between occurrences according to RecurrenceTypeEnum."},"occurrences_count":{"type":"integer","format":"int32","example":1,"description":"Whole natural number. The number of remaining occurrences. Each time a new     one is created, it decreases. When item is set to 1, only last one can be created. If it is set to 0,     recurrence is stopped. If -1, no limits are applied."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent opportunity."},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The effective start date of recurrence, which means each     next recurrence must be on or after this date."},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline step the opportunities created by the recurrence start in."},"type":{"type":"integer","description":"Recurrence cadence (e.g. Daily, Weekly, MonthlyAbsolute, MonthlyRelative, YearlyAbsolute, YearlyRelative).\n\nInteger enum value: 0 - NotSet, 1 - Daily, 2 - Weekly, 3 - MonthlyRelative, 4 - MonthlyAbsolute, 5 - YearlyRelative, 6 - YearlyAbsolute, 7 - AfterNDays, 8 - AfterNWeeks, 9 - AfterNMonths, 10 - AfterNYears","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10],"x-enumDescriptions":{"0":"No recurrence; no further items are created.","1":"Repeats every occurEvery days on a fixed schedule.","2":"Repeats every occurEvery weeks on the weekdays set in dayOfWeek.","3":"Repeats every occurEvery months on a fixed day of the month given by day.","4":"Repeats every occurEvery months on a given weekday of a given week of the month (week and dayOfWeek), for example the last Friday.","5":"Repeats every year on a fixed date given by month and day.","6":"Repeats every year on a given weekday of a given week in a given month (month, week and dayOfWeek).","7":"Creates the next item occurEvery days after the current one is completed.","8":"Creates the next item occurEvery weeks after the current one is completed.","9":"Creates the next item occurEvery months after the current one is completed.","10":"Creates the next item occurEvery years after the current one is completed."}},"week":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The week of month. This setting is applicable only     for RecurrenceTypeEnum.MonthlyAbsolute and RecurrenceTypeEnum.YearlyAbsolute.\n\nInteger enum value: -1 - WeekLast, 1 - Week1, 2 - Week2, 3 - Week3, 4 - Week4","example":-1,"enum":[-1,1,2,3,4],"x-enumDescriptions":{"1":"The first occurrence of the selected weekday in the month.","2":"The second occurrence of the selected weekday in the month.","3":"The third occurrence of the selected weekday in the month.","4":"The fourth occurrence of the selected weekday in the month.","-1":"The last occurrence of the selected weekday in the month."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchOpptyRecurrenceInput":{"description":"Field values of an OpptyRecurrence record to create, or to update when its id is set.","properties":{"apply_recurrence":{"type":"boolean","example":false,"description":"Default true. When set, then reccurence will apply when other conditions passed. With the value false (e.g. when skip button is used) then recurrence will not apply"},"condition":{"type":"string","example":1,"enum":[1,2],"description":"Bit Flag field, with limited combination of integer values.\n\nOptions:\nWon = 1 (0b01)\nLost = 2 (0b10) It is required if the recurrence is set. Conditionally generated opportunity as bitwise operation where bit: 1 bit - won 2 bit - loste.g. if the value is 1 => to generate only when opportunity is won.","x-enumDescriptions":{"1":"The next opportunity is created when the current one is won.","2":"The next opportunity is created when the current one is lost."}},"day":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The day of the month. This setting is applicable only for RecurrenceTypeEnum.MonthlyRelative and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Day1, 2 - Day2, 3 - Day3, 4 - Day4, 5 - Day5, 6 - Day6, 7 - Day7, 8 - Day8, 9 - Day9, 10 - Day10, 11 - Day11, 12 - Day12, 13 - Day13, 14 - Day14, 15 - Day15, 16 - Day16, 17 - Day17, 18 - Day18, 19 - Day19, 20 - Day20, 21 - Day21, 22 - Day22, 23 - Day23, 24 - Day24, 25 - Day25, 26 - Day26, 27 - Day27, 28 - Day28, 29 - Day29, 30 - Day30, 31 - Day31","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],"x-enumDescriptions":{"1":"Day 1 of the month.","2":"Day 2 of the month.","3":"Day 3 of the month.","4":"Day 4 of the month.","5":"Day 5 of the month.","6":"Day 6 of the month.","7":"Day 7 of the month.","8":"Day 8 of the month.","9":"Day 9 of the month.","10":"Day 10 of the month.","11":"Day 11 of the month.","12":"Day 12 of the month.","13":"Day 13 of the month.","14":"Day 14 of the month.","15":"Day 15 of the month.","16":"Day 16 of the month.","17":"Day 17 of the month.","18":"Day 18 of the month.","19":"Day 19 of the month.","20":"Day 20 of the month.","21":"Day 21 of the month.","22":"Day 22 of the month.","23":"Day 23 of the month.","24":"Day 24 of the month.","25":"Day 25 of the month.","26":"Day 26 of the month.","27":"Day 27 of the month.","28":"Day 28 of the month.","29":"Day 29 of the month.","30":"Day 30 of the month.","31":"Day 31 of the month."}},"day_of_week":{"type":"string","example":1,"enum":[1,2,4,8,16,32,64],"description":"Bit Flag field, with limited combination of integer values.\n\nOptions:\nSunday = 1 (0b0000001)\nMonday = 2 (0b0000010)\nTuesday = 4 (0b0000100)\nWednesday = 8 (0b0001000)\nThursday = 16 (0b0010000)\nFriday = 32 (0b0100000)\nSaturday = 64 (0b1000000) The days of week in bit mask, number where every bit means one day (e.g. 0010001 = every Monday and Friday), bit 0 is Monday. This setting is applicable only for RecurrenceTypeEnum.Weekly, RecurrenceTypeEnum.MonthlyAbsolute, RecurrenceTypeEnum.YearlyAbsolute.","x-enumDescriptions":{"1":"Sunday.","2":"Monday.","4":"Tuesday.","8":"Wednesday.","16":"Thursday.","32":"Friday.","64":"Saturday."}},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The last date when no more other items should be created."},"month":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The number of month this setting is applicable only     for RecurrenceTypeEnum.YearlyAbsolute and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Month1, 2 - Month2, 3 - Month3, 4 - Month4, 5 - Month5, 6 - Month6, 7 - Month7, 8 - Month8, 9 - Month9, 10 - Month10, 11 - Month11, 12 - Month12","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"January.","2":"February.","3":"March.","4":"April.","5":"May.","6":"June.","7":"July.","8":"August.","9":"September.","10":"October.","11":"November.","12":"December."}},"occur_every":{"type":"integer","format":"int32","example":1,"description":"The number of units of a given recurrence type between occurrences according to RecurrenceTypeEnum."},"occurrences_count":{"type":"integer","format":"int32","example":1,"description":"Whole natural number. The number of remaining occurrences. Each time a new     one is created, it decreases. When item is set to 1, only last one can be created. If it is set to 0,     recurrence is stopped. If -1, no limits are applied."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent opportunity."},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The effective start date of recurrence, which means each     next recurrence must be on or after this date."},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline step the opportunities created by the recurrence start in."},"type":{"type":"integer","description":"Recurrence cadence (e.g. Daily, Weekly, MonthlyAbsolute, MonthlyRelative, YearlyAbsolute, YearlyRelative).\n\nInteger enum value: 0 - NotSet, 1 - Daily, 2 - Weekly, 3 - MonthlyRelative, 4 - MonthlyAbsolute, 5 - YearlyRelative, 6 - YearlyAbsolute, 7 - AfterNDays, 8 - AfterNWeeks, 9 - AfterNMonths, 10 - AfterNYears","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10],"x-enumDescriptions":{"0":"No recurrence; no further items are created.","1":"Repeats every occurEvery days on a fixed schedule.","2":"Repeats every occurEvery weeks on the weekdays set in dayOfWeek.","3":"Repeats every occurEvery months on a fixed day of the month given by day.","4":"Repeats every occurEvery months on a given weekday of a given week of the month (week and dayOfWeek), for example the last Friday.","5":"Repeats every year on a fixed date given by month and day.","6":"Repeats every year on a given weekday of a given week in a given month (month, week and dayOfWeek).","7":"Creates the next item occurEvery days after the current one is completed.","8":"Creates the next item occurEvery weeks after the current one is completed.","9":"Creates the next item occurEvery months after the current one is completed.","10":"Creates the next item occurEvery years after the current one is completed."}},"week":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The week of month. This setting is applicable only     for RecurrenceTypeEnum.MonthlyAbsolute and RecurrenceTypeEnum.YearlyAbsolute.\n\nInteger enum value: -1 - WeekLast, 1 - Week1, 2 - Week2, 3 - Week3, 4 - Week4","example":-1,"enum":[-1,1,2,3,4],"x-enumDescriptions":{"1":"The first occurrence of the selected weekday in the month.","2":"The second occurrence of the selected weekday in the month.","3":"The third occurrence of the selected weekday in the month.","4":"The fourth occurrence of the selected weekday in the month.","-1":"The last occurrence of the selected weekday in the month."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OpptyRevenueSchedule":{"description":"Revenue schedule that splits the value of an opportunity into periods.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity. Must match with Opportunity id.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted."},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"cancelation_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the revenue schedule was cancelled. Empty for active schedules."},"period_count":{"type":"integer","format":"int32","example":1,"description":"Number of periods the opportunity value is split into."},"period_type":{"type":"integer","description":"Length of each period (e.g. Monthly, Quarterly, Yearly).\n\nInteger enum value: 1 - Month, 2 - Quarter, 3 - Year","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Revenue is split into monthly periods.","2":"Revenue is split into quarterly periods.","3":"Revenue is split into yearly periods."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when revenue recognition for the opportunity begins."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"periods":{"type":"array","items":{"type":"string","format":"uri","description":"Related OpptyRevenueSchedulePeriod record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyRevenueSchedulePeriod' for its fields."},"description":"Periods produced by this revenue schedule, ordered by date."}},"required":["is_delete_protected","id"]},"createOpptyRevenueScheduleInput":{"description":"Field values of a new OpptyRevenueSchedule record.","properties":{"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity. Must match with Opportunity id.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted."},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"cancelation_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the revenue schedule was cancelled. Empty for active schedules."},"period_count":{"type":"integer","format":"int32","example":1,"description":"Number of periods the opportunity value is split into."},"period_type":{"type":"integer","description":"Length of each period (e.g. Monthly, Quarterly, Yearly).\n\nInteger enum value: 1 - Month, 2 - Quarter, 3 - Year","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Revenue is split into monthly periods.","2":"Revenue is split into quarterly periods.","3":"Revenue is split into yearly periods."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when revenue recognition for the opportunity begins."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["id"]},"updateOpptyRevenueScheduleInput":{"description":"Field values to change on an OpptyRevenueSchedule record; fields left out keep their values.","properties":{"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted."},"cancelation_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the revenue schedule was cancelled. Empty for active schedules."},"period_count":{"type":"integer","format":"int32","example":1,"description":"Number of periods the opportunity value is split into."},"period_type":{"type":"integer","description":"Length of each period (e.g. Monthly, Quarterly, Yearly).\n\nInteger enum value: 1 - Month, 2 - Quarter, 3 - Year","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Revenue is split into monthly periods.","2":"Revenue is split into quarterly periods.","3":"Revenue is split into yearly periods."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when revenue recognition for the opportunity begins."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchOpptyRevenueScheduleInput":{"description":"Field values of an OpptyRevenueSchedule record to create, or to update when its id is set.","properties":{"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted."},"cancelation_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the revenue schedule was cancelled. Empty for active schedules."},"period_count":{"type":"integer","format":"int32","example":1,"description":"Number of periods the opportunity value is split into."},"period_type":{"type":"integer","description":"Length of each period (e.g. Monthly, Quarterly, Yearly).\n\nInteger enum value: 1 - Month, 2 - Quarter, 3 - Year","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Revenue is split into monthly periods.","2":"Revenue is split into quarterly periods.","3":"Revenue is split into yearly periods."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when revenue recognition for the opportunity begins."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"OpptyRevenueSchedulePeriod":{"description":"One period of an opportunity revenue schedule, with its date and amount.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"oppty_revenue_schedule":{"type":"string","format":"uri","description":"Parent revenue schedule this period belongs to.\n\nRelated OpptyRevenueSchedule record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyRevenueSchedule' for its fields."},"date":{"type":"string","format":"date","example":"2019-01-01","description":"Recognition date of this period."},"oppty_revenue_schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent revenue schedule."},"transaction_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier linking the period to the recognition transaction."},"value":{"type":"number","format":"double","example":4.32,"description":"Amount recognised in this period."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","oppty_revenue_schedule","oppty_revenue_schedule_id","transaction_id"]},"createOpptyRevenueSchedulePeriodInput":{"description":"Field values of a new OpptyRevenueSchedulePeriod record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"oppty_revenue_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyRevenueSchedule record."}},"description":"Parent revenue schedule this period belongs to.\n\nRelated OpptyRevenueSchedule record; see 'createOpptyRevenueScheduleInput' for its fields."},"date":{"type":"string","format":"date","example":"2019-01-01","description":"Recognition date of this period."},"oppty_revenue_schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent revenue schedule."},"transaction_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier linking the period to the recognition transaction."},"value":{"type":"number","format":"double","example":4.32,"description":"Amount recognised in this period."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["oppty_revenue_schedule","oppty_revenue_schedule_id","transaction_id"]},"updateOpptyRevenueSchedulePeriodInput":{"description":"Field values to change on an OpptyRevenueSchedulePeriod record; fields left out keep their values.","properties":{"oppty_revenue_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyRevenueSchedule record."}},"description":"Parent revenue schedule this period belongs to.\n\nRelated OpptyRevenueSchedule record; see 'updateOpptyRevenueScheduleInput' for its fields."},"date":{"type":"string","format":"date","example":"2019-01-01","description":"Recognition date of this period."},"oppty_revenue_schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent revenue schedule."},"transaction_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier linking the period to the recognition transaction."},"value":{"type":"number","format":"double","example":4.32,"description":"Amount recognised in this period."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchOpptyRevenueSchedulePeriodInput":{"description":"Field values of an OpptyRevenueSchedulePeriod record to create, or to update when its id is set.","properties":{"oppty_revenue_schedule":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyRevenueSchedule record."}},"description":"Parent revenue schedule this period belongs to.\n\nRelated OpptyRevenueSchedule record; see 'updateOpptyRevenueScheduleInput' for its fields."},"date":{"type":"string","format":"date","example":"2019-01-01","description":"Recognition date of this period."},"oppty_revenue_schedule_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent revenue schedule."},"transaction_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier linking the period to the recognition transaction."},"value":{"type":"number","format":"double","example":4.32,"description":"Amount recognised in this period."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ParentAccountRelationType":{"description":"Kind of parent-child relationship between accounts (e.g. parent company and subsidiary), with a label for each side.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"child_label":{"type":"string","example":"string","description":"Label shown for the child side of the parent-child account relation (e.g. \"Subsidiary\" when the parent is a holding company)."},"parent_label":{"type":"string","example":"string","description":"Label shown for the parent side of the parent-child account relation (e.g. \"Parent company\")."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","child_label","parent_label"]},"createParentAccountRelationTypeInput":{"description":"Field values of a new ParentAccountRelationType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"child_label":{"type":"string","example":"string","description":"Label shown for the child side of the parent-child account relation (e.g. \"Subsidiary\" when the parent is a holding company)."},"parent_label":{"type":"string","example":"string","description":"Label shown for the parent side of the parent-child account relation (e.g. \"Parent company\")."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["child_label","parent_label"]},"updateParentAccountRelationTypeInput":{"description":"Field values to change on a ParentAccountRelationType record; fields left out keep their values.","properties":{"child_label":{"type":"string","example":"string","description":"Label shown for the child side of the parent-child account relation (e.g. \"Subsidiary\" when the parent is a holding company)."},"parent_label":{"type":"string","example":"string","description":"Label shown for the parent side of the parent-child account relation (e.g. \"Parent company\")."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchParentAccountRelationTypeInput":{"description":"Field values of a ParentAccountRelationType record to create, or to update when its id is set.","properties":{"child_label":{"type":"string","example":"string","description":"Label shown for the child side of the parent-child account relation (e.g. \"Subsidiary\" when the parent is a holding company)."},"parent_label":{"type":"string","example":"string","description":"Label shown for the parent side of the parent-child account relation (e.g. \"Parent company\")."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Phone":{"description":"Phone number connected to Coevera for calls, text messages or WhatsApp, either personal to a user or shared by the company.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User the phone is assigned to, when the phone belongs to a specific user (personal calling/SMS line).\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"error_code":{"type":"integer","format":"int32","example":1,"description":"Error code recorded for the phone, set on integration failures (e.g. provider rejected the last send) or when the user disables the integration; empty when the phone is healthy."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assigned user, or empty when the phone is a company-level resource."},"phone_number":{"type":"string","example":"string","description":"Phone number in E.164 format (e.g. \"+12025550123\")."},"twilio_caller_sid":{"type":"string","example":"string","description":"External caller identifier from the calling provider (e.g. Twilio caller SID)."},"type":{"type":"integer","description":"Channel and assignment of the phone number: calling only, calling and SMS (unassigned, personal to the owner or shared by the company), or a personal or company WhatsApp account.\n\nInteger enum value: 1 - Calling, 2 - CallingSmsUnassigned, 3 - CallingSmsPersonal, 4 - CallingSmsCompany, 5 - WhatsAppPersonal, 6 - WhatsAppCompany","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Number used for voice calls only.","2":"Calling and SMS number not assigned to any user or to the company.","3":"Calling and SMS number assigned to a single user.","4":"Shared company calling and SMS number.","5":"WhatsApp account of a single user.","6":"Shared company WhatsApp account."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"message_forwarding_email":{"type":"string","example":"string","description":"Email address that incoming text messages to this phone are forwarded to. Empty when forwarding is not configured."},"call_forwarding_phone":{"type":"string","example":"string","description":"Phone number that incoming calls/SMS to this phone are forwarded to. Empty when forwarding is not configured."},"enabled":{"type":"boolean","example":false,"description":"False when the user has disabled the calling/SMS integration on this phone (error_code is set to indicate user disablement); true otherwise."}},"required":["is_delete_protected","id","name","type","enabled"]},"createPhoneInput":{"description":"Field values of a new Phone record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"error_code":{"type":"integer","format":"int32","example":1,"description":"Error code recorded for the phone, set on integration failures (e.g. provider rejected the last send) or when the user disables the integration; empty when the phone is healthy."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assigned user, or empty when the phone is a company-level resource."},"phone_number":{"type":"string","example":"string","description":"Phone number in E.164 format (e.g. \"+12025550123\")."},"twilio_caller_sid":{"type":"string","example":"string","description":"External caller identifier from the calling provider (e.g. Twilio caller SID)."},"type":{"type":"integer","description":"Channel and assignment of the phone number: calling only, calling and SMS (unassigned, personal to the owner or shared by the company), or a personal or company WhatsApp account.\n\nInteger enum value: 1 - Calling, 2 - CallingSmsUnassigned, 3 - CallingSmsPersonal, 4 - CallingSmsCompany, 5 - WhatsAppPersonal, 6 - WhatsAppCompany","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Number used for voice calls only.","2":"Calling and SMS number not assigned to any user or to the company.","3":"Calling and SMS number assigned to a single user.","4":"Shared company calling and SMS number.","5":"WhatsApp account of a single user.","6":"Shared company WhatsApp account."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"enabled":{"type":"boolean","example":false,"description":"False when the user has disabled the calling/SMS integration on this phone (error_code is set to indicate user disablement); true otherwise."}},"required":["name","type","enabled"]},"updatePhoneInput":{"description":"Field values to change on a Phone record; fields left out keep their values.","properties":{"error_code":{"type":"integer","format":"int32","example":1,"description":"Error code recorded for the phone, set on integration failures (e.g. provider rejected the last send) or when the user disables the integration; empty when the phone is healthy."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assigned user, or empty when the phone is a company-level resource."},"phone_number":{"type":"string","example":"string","description":"Phone number in E.164 format (e.g. \"+12025550123\")."},"twilio_caller_sid":{"type":"string","example":"string","description":"External caller identifier from the calling provider (e.g. Twilio caller SID)."},"type":{"type":"integer","description":"Channel and assignment of the phone number: calling only, calling and SMS (unassigned, personal to the owner or shared by the company), or a personal or company WhatsApp account.\n\nInteger enum value: 1 - Calling, 2 - CallingSmsUnassigned, 3 - CallingSmsPersonal, 4 - CallingSmsCompany, 5 - WhatsAppPersonal, 6 - WhatsAppCompany","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Number used for voice calls only.","2":"Calling and SMS number not assigned to any user or to the company.","3":"Calling and SMS number assigned to a single user.","4":"Shared company calling and SMS number.","5":"WhatsApp account of a single user.","6":"Shared company WhatsApp account."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"enabled":{"type":"boolean","example":false,"description":"False when the user has disabled the calling/SMS integration on this phone (error_code is set to indicate user disablement); true otherwise."}}},"batchPhoneInput":{"description":"Field values of a Phone record to create, or to update when its id is set.","properties":{"error_code":{"type":"integer","format":"int32","example":1,"description":"Error code recorded for the phone, set on integration failures (e.g. provider rejected the last send) or when the user disables the integration; empty when the phone is healthy."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assigned user, or empty when the phone is a company-level resource."},"phone_number":{"type":"string","example":"string","description":"Phone number in E.164 format (e.g. \"+12025550123\")."},"twilio_caller_sid":{"type":"string","example":"string","description":"External caller identifier from the calling provider (e.g. Twilio caller SID)."},"type":{"type":"integer","description":"Channel and assignment of the phone number: calling only, calling and SMS (unassigned, personal to the owner or shared by the company), or a personal or company WhatsApp account.\n\nInteger enum value: 1 - Calling, 2 - CallingSmsUnassigned, 3 - CallingSmsPersonal, 4 - CallingSmsCompany, 5 - WhatsAppPersonal, 6 - WhatsAppCompany","example":1,"enum":[1,2,3,4,5,6],"x-enumDescriptions":{"1":"Number used for voice calls only.","2":"Calling and SMS number not assigned to any user or to the company.","3":"Calling and SMS number assigned to a single user.","4":"Shared company calling and SMS number.","5":"WhatsApp account of a single user.","6":"Shared company WhatsApp account."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"enabled":{"type":"boolean","example":false,"description":"False when the user has disabled the calling/SMS integration on this phone (error_code is set to indicate user disablement); true otherwise."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Pipeline":{"description":"Sales pipeline: the ordered steps that opportunities of its opportunity types move through.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the pipeline label, encoded as a 24-bit RGB integer: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"steps":{"type":"array","items":{"$ref":"#/components/schemas/batchStepInput"},"description":"Steps that make up this pipeline, in the order opportunities move through them."},"opportunity_types":{"type":"array","items":{"type":"string","format":"uri","description":"Related OpportunityType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpportunityType' for its fields."},"description":"Opportunity types that follow this pipeline."}},"required":["is_delete_protected","id","color","name","steps","opportunity_types"]},"createPipelineInput":{"description":"Field values of a new Pipeline record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the pipeline label, encoded as a 24-bit RGB integer: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"steps":{"type":"array","items":{"$ref":"#/components/schemas/batchStepInput"},"description":"Steps that make up this pipeline, in the order opportunities move through them."}},"required":["color","name","steps"]},"updatePipelineInput":{"description":"Field values to change on a Pipeline record; fields left out keep their values.","properties":{"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the pipeline label, encoded as a 24-bit RGB integer: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"steps":{"type":"array","items":{"$ref":"#/components/schemas/batchStepInput"},"description":"Steps that make up this pipeline, in the order opportunities move through them."}}},"batchPipelineInput":{"description":"Field values of a Pipeline record to create, or to update when its id is set.","properties":{"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the pipeline label, encoded as a 24-bit RGB integer: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"steps":{"type":"array","items":{"$ref":"#/components/schemas/batchStepInput"},"description":"Steps that make up this pipeline, in the order opportunities move through them."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Process":{"description":"Automatizer process: an automated workflow that runs its actions when its trigger fires (a record event, a schedule or a webhook).","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User who owns the process.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"ai_conversation":{"type":"object","description":"AI assistant conversation associated with the process (e.g. records of AI-driven schema generation)."},"deactivation_reason":{"type":"integer","description":"Why the process is disabled: turned off by a user, suspended after repeated failed runs, or suspended because Automatizer was switched off for the space. NoReason while enabled; read-only.\n\nInteger enum value: 0 - NoReason, 1 - Manual, 2 - TooManyErrors, 3 - DisabledFeature","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"The process is enabled.","1":"A user disabled the process.","2":"The process was suspended automatically after its last 20 record-triggered runs failed.","3":"The process was suspended because Automatizer was switched off for the space."}},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the process."},"is_enabled":{"type":"boolean","example":false,"description":"When true, the process actively responds to its trigger; when false, the process is paused. Toggle via enable/disable mutations."},"last_schema_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to settings."},"last_status_change":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent change to is_enabled."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Process schema as a JSON object conforming to the ProcessSchema type — trigger, nodes and settings. Built via the process builder; validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProcessSchema This payload conforms to the `ProcessSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ProcessSchema.json","description":"ProcessSchema JSON Schema"}},"type":{"type":"integer","description":"Scope of the process: Personal processes belong to their owner and are started only by the owner's own actions; Space processes apply to the whole space.\n\nInteger enum value: 1 - Personal, 2 - Space","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Owned by one user and started only by that user's own actions.","2":"Shared for the whole space; its trigger decides whose actions start it."}},"activity_logs":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProcessActivityLog record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProcessActivityLog' for its fields."},"description":"Activity log runs (one per process execution) recorded for this process."},"tags":{"type":"array","items":{"type":"string","format":"uri","description":"Related TagRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TagRelation' for its fields."},"description":"Tags attached to the process for organisation/filtering."},"activity":{"type":"object","description":"Activity timeline for the last 24 hours showing per-hour counts of successful, warning, and error process runs."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Files attached to the process (e.g. process documentation)."}},"required":["is_delete_protected","id","owner","name","owner_id","type","activity"]},"createProcessInput":{"description":"Field values of a new Process record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"ai_conversation":{"type":"object","description":"AI assistant conversation associated with the process (e.g. records of AI-driven schema generation)."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the process."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Process schema as a JSON object conforming to the ProcessSchema type — trigger, nodes and settings. Built via the process builder; validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProcessSchema This payload conforms to the `ProcessSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ProcessSchema.json","description":"ProcessSchema JSON Schema"}},"type":{"type":"integer","description":"Scope of the process: Personal processes belong to their owner and are started only by the owner's own actions; Space processes apply to the whole space.\n\nInteger enum value: 1 - Personal, 2 - Space","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Owned by one user and started only by that user's own actions.","2":"Shared for the whole space; its trigger decides whose actions start it."}},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'createTagRelationInput' for its fields."},"description":"Tags attached to the process for organisation/filtering."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Files attached to the process (e.g. process documentation)."}},"required":["name","owner_id","type"]},"updateProcessInput":{"description":"Field values to change on a Process record; fields left out keep their values.","properties":{"ai_conversation":{"type":"object","description":"AI assistant conversation associated with the process (e.g. records of AI-driven schema generation)."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the process."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Process schema as a JSON object conforming to the ProcessSchema type — trigger, nodes and settings. Built via the process builder; validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProcessSchema This payload conforms to the `ProcessSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ProcessSchema.json","description":"ProcessSchema JSON Schema"}},"type":{"type":"integer","description":"Scope of the process: Personal processes belong to their owner and are started only by the owner's own actions; Space processes apply to the whole space.\n\nInteger enum value: 1 - Personal, 2 - Space","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Owned by one user and started only by that user's own actions.","2":"Shared for the whole space; its trigger decides whose actions start it."}},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tags attached to the process for organisation/filtering."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Files attached to the process (e.g. process documentation)."}}},"batchProcessInput":{"description":"Field values of a Process record to create, or to update when its id is set.","properties":{"ai_conversation":{"type":"object","description":"AI assistant conversation associated with the process (e.g. records of AI-driven schema generation)."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the process."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Process schema as a JSON object conforming to the ProcessSchema type — trigger, nodes and settings. Built via the process builder; validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProcessSchema This payload conforms to the `ProcessSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ProcessSchema.json","description":"ProcessSchema JSON Schema"}},"type":{"type":"integer","description":"Scope of the process: Personal processes belong to their owner and are started only by the owner's own actions; Space processes apply to the whole space.\n\nInteger enum value: 1 - Personal, 2 - Space","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Owned by one user and started only by that user's own actions.","2":"Shared for the whole space; its trigger decides whose actions start it."}},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tags attached to the process for organisation/filtering."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Files attached to the process (e.g. process documentation)."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProcessActivityLog":{"description":"One run of an Automatizer process, with its status, timing and the steps it took.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"actor":{"type":"string","format":"uri","description":"User who triggered the run, or empty for runs triggered by automation.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"application":{"type":"string","format":"uri","description":"Application context the run was triggered in.\n\nRelated Application record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Application' for its fields."},"process":{"type":"string","format":"uri","description":"Process whose execution this log records.\n\nRelated Process record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Process' for its fields."},"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the run, or empty for runs triggered by automation."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application the triggering change came from, such as the web app or an API access; scheduled runs are attributed to the Automatizer."},"cpu_run_time":{"type":"number","format":"double","example":"4.32","description":"Total CPU time consumed by the run, in seconds."},"end_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the run finished. Empty while the run is still in progress (e.g. waiting on scheduled actions)."},"is_test_run":{"type":"boolean","example":false,"description":"True when the run was triggered as a test (results are not persisted to records)."},"parent_process_ids":{"type":"object","description":"Ids of parent processes that triggered this run, ordered from outermost to innermost. Empty for top-level runs."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the Automatizer process whose run this log records."},"run_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier grouping all activity logs that share the same root process run, including chained sub-process runs."},"start_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the run started."},"status":{"type":"integer","description":"Overall result of the process run: the most severe status among its log lines, Error when any step failed and Warning when a step completed with warnings.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"lines":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProcessActivityLogLine record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProcessActivityLogLine' for its fields."},"description":"Activity log lines describing each step taken in this run (visible only)."},"record_name":{"type":"string","example":"string","description":"Name of the trigger record (extracted from the first log line) for display in activity log lists."}},"required":["is_delete_protected","id","application","process","application_id","process_id","start_time","status"]},"createProcessActivityLogInput":{"description":"Field values of a new ProcessActivityLog record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the run, or empty for runs triggered by automation."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application the triggering change came from, such as the web app or an API access; scheduled runs are attributed to the Automatizer."},"cpu_run_time":{"type":"number","format":"double","example":"4.32","description":"Total CPU time consumed by the run, in seconds."},"end_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the run finished. Empty while the run is still in progress (e.g. waiting on scheduled actions)."},"is_test_run":{"type":"boolean","example":false,"description":"True when the run was triggered as a test (results are not persisted to records)."},"parent_process_ids":{"type":"object","description":"Ids of parent processes that triggered this run, ordered from outermost to innermost. Empty for top-level runs."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the Automatizer process whose run this log records."},"run_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier grouping all activity logs that share the same root process run, including chained sub-process runs."},"start_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the run started."},"status":{"type":"integer","description":"Overall result of the process run: the most severe status among its log lines, Error when any step failed and Warning when a step completed with warnings.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}},"required":["application_id","process_id","start_time","status"]},"updateProcessActivityLogInput":{"description":"Field values to change on a ProcessActivityLog record; fields left out keep their values.","properties":{"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the run, or empty for runs triggered by automation."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application the triggering change came from, such as the web app or an API access; scheduled runs are attributed to the Automatizer."},"cpu_run_time":{"type":"number","format":"double","example":"4.32","description":"Total CPU time consumed by the run, in seconds."},"end_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the run finished. Empty while the run is still in progress (e.g. waiting on scheduled actions)."},"is_test_run":{"type":"boolean","example":false,"description":"True when the run was triggered as a test (results are not persisted to records)."},"parent_process_ids":{"type":"object","description":"Ids of parent processes that triggered this run, ordered from outermost to innermost. Empty for top-level runs."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the Automatizer process whose run this log records."},"run_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier grouping all activity logs that share the same root process run, including chained sub-process runs."},"start_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the run started."},"status":{"type":"integer","description":"Overall result of the process run: the most severe status among its log lines, Error when any step failed and Warning when a step completed with warnings.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}}},"batchProcessActivityLogInput":{"description":"Field values of a ProcessActivityLog record to create, or to update when its id is set.","properties":{"actor_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the run, or empty for runs triggered by automation."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the application the triggering change came from, such as the web app or an API access; scheduled runs are attributed to the Automatizer."},"cpu_run_time":{"type":"number","format":"double","example":"4.32","description":"Total CPU time consumed by the run, in seconds."},"end_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the run finished. Empty while the run is still in progress (e.g. waiting on scheduled actions)."},"is_test_run":{"type":"boolean","example":false,"description":"True when the run was triggered as a test (results are not persisted to records)."},"parent_process_ids":{"type":"object","description":"Ids of parent processes that triggered this run, ordered from outermost to innermost. Empty for top-level runs."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the Automatizer process whose run this log records."},"run_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Identifier grouping all activity logs that share the same root process run, including chained sub-process runs."},"start_time":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the run started."},"status":{"type":"integer","description":"Overall result of the process run: the most severe status among its log lines, Error when any step failed and Warning when a step completed with warnings.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProcessActivityLogLine":{"description":"One step logged in a run of an Automatizer process.","properties":{"formatted_text":{"type":"string","example":"string","description":"Human-readable rendering of the log line, prefixed with the line's timestamp and (when applicable) the parent record id."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"process_activity_log":{"type":"string","format":"uri","description":"Activity log run this line belongs to.\n\nRelated ProcessActivityLog record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProcessActivityLog' for its fields."},"executed_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the step represented by this line was executed. Empty for scheduled steps that have not yet run."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"process_activity_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the process run (activity log) this line belongs to."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its log run."},"status":{"type":"integer","description":"Result of the process step recorded by this line, such as Ok, Warning (for example a scheduled action that was canceled) or Error.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}},"required":["formatted_text","is_delete_protected","id","process_activity_log","process_activity_log_id","sort_order"]},"createProcessActivityLogLineInput":{"description":"Field values of a new ProcessActivityLogLine record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"executed_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the step represented by this line was executed. Empty for scheduled steps that have not yet run."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"process_activity_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the process run (activity log) this line belongs to."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its log run."},"status":{"type":"integer","description":"Result of the process step recorded by this line, such as Ok, Warning (for example a scheduled action that was canceled) or Error.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}},"required":["process_activity_log_id","sort_order"]},"updateProcessActivityLogLineInput":{"description":"Field values to change on a ProcessActivityLogLine record; fields left out keep their values.","properties":{"executed_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the step represented by this line was executed. Empty for scheduled steps that have not yet run."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"process_activity_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the process run (activity log) this line belongs to."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its log run."},"status":{"type":"integer","description":"Result of the process step recorded by this line, such as Ok, Warning (for example a scheduled action that was canceled) or Error.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}}}},"batchProcessActivityLogLineInput":{"description":"Field values of a ProcessActivityLogLine record to create, or to update when its id is set.","properties":{"executed_at":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the step represented by this line was executed. Empty for scheduled steps that have not yet run."},"is_visible":{"type":"boolean","example":false,"description":"True when the line is shown in the activity log UI; false for internal-only lines."},"process_activity_log_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the process run (activity log) this line belongs to."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the line within its log run."},"status":{"type":"integer","description":"Result of the process step recorded by this line, such as Ok, Warning (for example a scheduled action that was canceled) or Error.\n\nInteger enum value: 1 - Ok, 2 - Warning, 3 - Error, 4 - Scheduled, 5 - Expired","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Completed successfully.","2":"Completed with warnings, such as skipped records, or a scheduled step was canceled.","3":"Failed.","4":"Not active yet; its active-from date is in the future.","5":"No longer active; its active-to date has passed."}},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProcessTemplate":{"description":"Ready-made Automatizer process offered in the template gallery as a starting point for new processes.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"description":{"type":"string","example":"string","description":"Free-text description of what the template does."},"is_recommended":{"type":"boolean","example":false,"description":"True when the platform recommends this template (highlighted in the template gallery)."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"object","description":"Process schema shipped by the template, as a JSON object conforming to the ProcessSchema type (trigger, nodes, settings). Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProcessSchema"},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Files attached to the template (e.g. reference documents, screenshots)."},"action_types":{"type":"array","items":{"type":"string","example":"ArchiveRecord","enum":["ArchiveRecord","CreateRecord","ManualTrigger","RecordChangedTrigger","ScheduledTrigger","SendEmail","SendWebhook","UpdateRecord"],"x-enumDescriptions":{"CreateRecord":"The template creates records.","UpdateRecord":"The template updates records.","ArchiveRecord":"The template archives records.","SendWebhook":"The template sends webhooks.","SendEmail":"The template sends emails.","ManualTrigger":"The template is started manually.","ScheduledTrigger":"The template runs on a schedule.","RecordChangedTrigger":"The template runs when a record changes."}},"description":"Action-type icons present in the template schema, used for filtering templates by capability (e.g. SendEmail, CreateRecord, Webhook)."}},"required":["is_delete_protected","id","name","settings"]},"createProcessTemplateInput":{"description":"Field values of a new ProcessTemplate record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"description":{"type":"string","example":"string","description":"Free-text description of what the template does."},"is_recommended":{"type":"boolean","example":false,"description":"True when the platform recommends this template (highlighted in the template gallery)."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"object","description":"Process schema shipped by the template, as a JSON object conforming to the ProcessSchema type (trigger, nodes, settings). Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProcessSchema"},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Files attached to the template (e.g. reference documents, screenshots)."}},"required":["name","settings"]},"updateProcessTemplateInput":{"description":"Field values to change on a ProcessTemplate record; fields left out keep their values.","properties":{"description":{"type":"string","example":"string","description":"Free-text description of what the template does."},"is_recommended":{"type":"boolean","example":false,"description":"True when the platform recommends this template (highlighted in the template gallery)."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"object","description":"Process schema shipped by the template, as a JSON object conforming to the ProcessSchema type (trigger, nodes, settings). Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProcessSchema"},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Files attached to the template (e.g. reference documents, screenshots)."}}},"batchProcessTemplateInput":{"description":"Field values of a ProcessTemplate record to create, or to update when its id is set.","properties":{"description":{"type":"string","example":"string","description":"Free-text description of what the template does."},"is_recommended":{"type":"boolean","example":false,"description":"True when the platform recommends this template (highlighted in the template gallery)."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"object","description":"Process schema shipped by the template, as a JSON object conforming to the ProcessSchema type (trigger, nodes, settings). Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProcessSchema"},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Files attached to the template (e.g. reference documents, screenshots)."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Product":{"description":"Product or service in the catalog that can be added as a line item to opportunities and quotes.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"currency_exchange_rates_list":{"type":"string","format":"uri","description":"Currency exchange rate list used to convert monetary fields linked to this product. Empty to inherit the team space default.\n\nRelated CurrencyExchangeRatesList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRatesList' for its fields."},"picture":{"type":"string","format":"uri","description":"Product picture.\n\nRelated CloudObject record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObject' for its fields."},"product_category":{"type":"string","format":"uri","description":"Product category this product belongs to. Categories form a hierarchy used in the catalog browser.\n\nRelated ProductCategory record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProductCategory' for its fields."},"product_type":{"type":"string","format":"uri","description":"Product type that classifies this product. Product types are configurable per team space and drive which form, fields and product-line behavior apply.\n\nRelated ProductType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProductType' for its fields."},"allowed_pipelines":{"type":"integer","description":"Whether this product can be added to all pipelines or only the explicitly linked subset (see product_pipeline_relations).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The product can be added in all pipelines.","2":"The product can be added only in the pipelines it is linked to."}},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this product."},"description":{"type":"string","example":"string","description":"Free-form description of the product."},"name":{"type":"string","example":"string","description":"Name of the product, shown in catalogues and pickers."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product picture document."},"product_category_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product category this product belongs to, or empty when it is not categorized."},"product_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product type that classifies this product."},"sku":{"type":"string","example":"string","description":"Stock-keeping unit (SKU) of the product, unique in the space: a second product with the same `sku` is refused with HTTP 400."},"unit_symbol":{"type":"string","example":"string","description":"Unit of measure shown next to product quantities, such as pcs, kg or hours; required on create."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"product_pipeline_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProductPipelineRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProductPipelineRelation' for its fields."},"description":"Deprecated pipeline connection."},"product_pipelines":{"type":"object","properties":{"pipelines":{"type":"array","description":"Ids of the pipelines the product can be added in. Effective only when allowed_pipelines is Selected.","items":{"type":"string","description":"Id of a pipeline.","format":"uuid"}},"allowed_pipelines":{"type":"integer","description":"Whether this product can be added to all pipelines or only the explicitly linked subset (see product_pipeline_relations).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The product can be added in all pipelines.","2":"The product can be added only in the pipelines it is linked to."}}},"required":["pipelines","allowed_pipelines"],"description":"Configuration of Pipelines where the Product can be used."},"formatted_name":{"type":"string","example":"string","description":"Display version of the product name, used in lists and references."},"oppty_product_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product line-item type derived from product_type. Used as a filter when listing relations on opportunities and quotes. Read-only."},"price_lists":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the price list."},"name":{"type":"string","description":"Name of the price list."}}},"description":"Active price lists this product is priced in, ordered by name. Read-only; computed by Coevera."},"price_schedules":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the price list."},"name":{"type":"string","description":"Name of the price list."}}},"description":"Active price schedules this product is priced in, ordered by name. Read-only; computed by Coevera."}},"required":["is_delete_protected","id","product_type","name","formatted_name","oppty_product_relation_type_id"]},"createProductInput":{"description":"Field values of a new Product record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"picture":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Product picture.\n\nRelated CloudObject record; see 'createCloudObjectInput' for its fields."},"allowed_pipelines":{"type":"integer","description":"Whether this product can be added to all pipelines or only the explicitly linked subset (see product_pipeline_relations).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The product can be added in all pipelines.","2":"The product can be added only in the pipelines it is linked to."}},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this product."},"description":{"type":"string","example":"string","description":"Free-form description of the product."},"name":{"type":"string","example":"string","description":"Name of the product, shown in catalogues and pickers."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product picture document."},"product_category_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product category this product belongs to, or empty when it is not categorized."},"product_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product type that classifies this product."},"sku":{"type":"string","example":"string","description":"Stock-keeping unit (SKU) of the product, unique in the space: a second product with the same `sku` is refused with HTTP 400. A deleted product's `sku` can be used again."},"unit_symbol":{"type":"string","example":"string","description":"Unit of measure shown next to product quantities, such as pcs, kg or hours; required on create."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"product_pipeline_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProductPipelineRelation record."}},"description":"Related ProductPipelineRelation record; see 'createProductPipelineRelationInput' for its fields."},"description":"Deprecated pipeline connection."},"product_pipelines":{"type":"object","properties":{"pipelines":{"type":"array","description":"Ids of the pipelines the product can be added in. Effective only when allowed_pipelines is Selected.","items":{"type":"string","description":"Id of a pipeline.","format":"uuid"}},"allowed_pipelines":{"type":"integer","description":"Whether this product can be added to all pipelines or only the explicitly linked subset (see product_pipeline_relations).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The product can be added in all pipelines.","2":"The product can be added only in the pipelines it is linked to."}}},"required":["pipelines","allowed_pipelines"],"description":"Configuration of Pipelines where the Product can be used."},"picture_source_url":{"type":"string","example":"string","description":"URL of an image to use as the product picture. The image is downloaded from this URL and checked; only pictures are supported."}},"required":["name","unit_symbol"]},"updateProductInput":{"description":"Field values to change on a Product record; fields left out keep their values.","properties":{"picture":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Product picture.\n\nRelated CloudObject record; see 'updateCloudObjectInput' for its fields."},"allowed_pipelines":{"type":"integer","description":"Whether this product can be added to all pipelines or only the explicitly linked subset (see product_pipeline_relations).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The product can be added in all pipelines.","2":"The product can be added only in the pipelines it is linked to."}},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this product."},"description":{"type":"string","example":"string","description":"Free-form description of the product."},"name":{"type":"string","example":"string","description":"Name of the product, shown in catalogues and pickers."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product picture document."},"product_category_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product category this product belongs to, or empty when it is not categorized."},"product_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product type that classifies this product."},"sku":{"type":"string","example":"string","description":"Stock-keeping unit (SKU) identifier of the product. Must be unique across products."},"unit_symbol":{"type":"string","example":"string","description":"Unit of measure shown next to product quantities (e.g. pcs, kg, hours)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"product_pipeline_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProductPipelineRelation record."}},"description":"Related ProductPipelineRelation record; see 'updateProductPipelineRelationInput' for its fields."},"description":"Deprecated pipeline connection."},"product_pipelines":{"type":"object","properties":{"pipelines":{"type":"array","description":"Ids of the pipelines the product can be added in. Effective only when allowed_pipelines is Selected.","items":{"type":"string","description":"Id of a pipeline.","format":"uuid"}},"allowed_pipelines":{"type":"integer","description":"Whether this product can be added to all pipelines or only the explicitly linked subset (see product_pipeline_relations).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The product can be added in all pipelines.","2":"The product can be added only in the pipelines it is linked to."}}},"required":["pipelines","allowed_pipelines"],"description":"Configuration of Pipelines where the Product can be used."},"picture_source_url":{"type":"string","example":"string","description":"URL of an image to use as the product picture. The image is downloaded from this URL and checked; only pictures are supported."}}},"batchProductInput":{"description":"Field values of a Product record to create, or to update when its id is set.","properties":{"picture":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Product picture.\n\nRelated CloudObject record; see 'updateCloudObjectInput' for its fields."},"allowed_pipelines":{"type":"integer","description":"Whether this product can be added to all pipelines or only the explicitly linked subset (see product_pipeline_relations).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The product can be added in all pipelines.","2":"The product can be added only in the pipelines it is linked to."}},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this product."},"description":{"type":"string","example":"string","description":"Free-form description of the product."},"name":{"type":"string","example":"string","description":"Name of the product, shown in catalogues and pickers."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product picture document."},"product_category_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product category this product belongs to, or empty when it is not categorized."},"product_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product type that classifies this product."},"sku":{"type":"string","example":"string","description":"Stock-keeping unit (SKU) identifier of the product. Must be unique across products."},"unit_symbol":{"type":"string","example":"string","description":"Unit of measure shown next to product quantities (e.g. pcs, kg, hours)."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"product_pipeline_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProductPipelineRelation record."}},"description":"Related ProductPipelineRelation record; see 'updateProductPipelineRelationInput' for its fields."},"description":"Deprecated pipeline connection."},"product_pipelines":{"type":"object","properties":{"pipelines":{"type":"array","description":"Ids of the pipelines the product can be added in. Effective only when allowed_pipelines is Selected.","items":{"type":"string","description":"Id of a pipeline.","format":"uuid"}},"allowed_pipelines":{"type":"integer","description":"Whether this product can be added to all pipelines or only the explicitly linked subset (see product_pipeline_relations).\n\nInteger enum value: 1 - All, 2 - Selected","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The product can be added in all pipelines.","2":"The product can be added only in the pipelines it is linked to."}}},"required":["pipelines","allowed_pipelines"],"description":"Configuration of Pipelines where the Product can be used."},"picture_source_url":{"type":"string","example":"string","description":"URL of an image to use as the product picture. The image is downloaded from this URL and checked; only pictures are supported."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProductCategory":{"description":"Category in the hierarchy of the product catalog.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"parent":{"type":"string","format":"uri","description":"Parent category in the catalog hierarchy. Empty for top-level categories.\n\nRelated ProductCategory record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProductCategory' for its fields."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"parent_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent category."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"product_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related Product record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Product' for its fields."},"description":"All Products in this category."}},"required":["is_delete_protected","id","name"]},"createProductCategoryInput":{"description":"Field values of a new ProductCategory record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"parent_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent category."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"product_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Product record."}},"description":"Related Product record; see 'createProductInput' for its fields."},"description":"All Products in this category."}},"required":["name"]},"updateProductCategoryInput":{"description":"Field values to change on a ProductCategory record; fields left out keep their values.","properties":{"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"parent_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent category."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"product_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Product record."}},"description":"Related Product record; see 'updateProductInput' for its fields."},"description":"All Products in this category."}}},"batchProductCategoryInput":{"description":"Field values of a ProductCategory record to create, or to update when its id is set.","properties":{"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"parent_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent category."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"product_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related Product record."}},"description":"Related Product record; see 'updateProductInput' for its fields."},"description":"All Products in this category."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProductDataExRelation":{"description":"Option selected in a multi-select checkbox field of a product.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"data":{"type":"string","format":"uri","description":"Option selected in the multi-select field; it belongs to the data set given by data_set_id.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"product":{"type":"string","format":"uri","description":"Product on which the option is selected.\n\nRelated Product record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Product' for its fields."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product on which the option is selected."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","data","product","data_id","data_set_id","product_id"]},"ProductPipelineRelation":{"description":"Pipeline in which a product can be added as a line item.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"pipeline":{"type":"string","format":"uri","description":"Pipeline in which the product can be added as a line item.\n\nRelated Pipeline record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Pipeline' for its fields."},"product":{"type":"string","format":"uri","description":"Product available in the linked pipeline.\n\nRelated Product record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Product' for its fields."},"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline in which the product can be added as a line item."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product made available in the pipeline."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","pipeline","product","pipeline_id","product_id"]},"createProductPipelineRelationInput":{"description":"Field values of a new ProductPipelineRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline in which the product can be added as a line item."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product made available in the pipeline."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["pipeline_id","product_id"]},"updateProductPipelineRelationInput":{"description":"Field values to change on a ProductPipelineRelation record; fields left out keep their values.","properties":{"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline in which the product can be added as a line item."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product made available in the pipeline."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchProductPipelineRelationInput":{"description":"Field values of a ProductPipelineRelation record to create, or to update when its id is set.","properties":{"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline in which the product can be added as a line item."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product made available in the pipeline."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProductPriceList":{"description":"Price list with product prices per currency, applied to opportunities and quotes while it is active.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"description":{"type":"string","example":"string","description":"Free-form description of the price list."},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the price list expires. Empty means open-ended."},"is_active":{"type":"boolean","example":false,"description":"Master switch for the price list. Inactive price lists are not applied to opportunities or quotes regardless of dates."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"rules":{"type":"object","description":"Filter expression — a FieldFilter JSON object — deciding which records (e.g. accounts, opportunities) the price list applies to. Empty when it applies to all records. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/f/#FieldFilter"},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the price list becomes active. Empty means immediately."},"type":{"type":"integer","description":"Kind of price list: a regular price list (Standard), or a price schedule with special prices that take precedence over standard price lists while active (Scheduled).\n\nInteger enum value: 1 - Standard, 2 - Scheduled","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Regular price list that offers product prices to matching records.","2":"Price schedule with special prices; while active, its lowest applicable price takes precedence over standard price lists."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"product_price_list_prices":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProductPriceListPrice record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProductPriceListPrice' for its fields."},"description":"Per-product, per-currency prices configured in the price list."}},"required":["is_delete_protected","id","name"]},"createProductPriceListInput":{"description":"Field values of a new ProductPriceList record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"description":{"type":"string","example":"string","description":"Free-form description of the price list."},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the price list expires. Empty means open-ended."},"is_active":{"type":"boolean","example":false,"description":"Master switch for the price list. Inactive price lists are not applied to opportunities or quotes regardless of dates."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"rules":{"type":"object","description":"Filter expression — a FieldFilter JSON object — deciding which records (e.g. accounts, opportunities) the price list applies to. Empty when it applies to all records. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/f/#FieldFilter"},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the price list becomes active. Empty means immediately."},"type":{"type":"integer","description":"Kind of price list: a regular price list (Standard), or a price schedule with special prices that take precedence over standard price lists while active (Scheduled).\n\nInteger enum value: 1 - Standard, 2 - Scheduled","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Regular price list that offers product prices to matching records.","2":"Price schedule with special prices; while active, its lowest applicable price takes precedence over standard price lists."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"product_price_list_prices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProductPriceListPrice record."}},"description":"Related ProductPriceListPrice record; see 'createProductPriceListPriceInput' for its fields."},"description":"Per-product, per-currency prices configured in the price list."}},"required":["name"]},"updateProductPriceListInput":{"description":"Field values to change on a ProductPriceList record; fields left out keep their values.","properties":{"description":{"type":"string","example":"string","description":"Free-form description of the price list."},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the price list expires. Empty means open-ended."},"is_active":{"type":"boolean","example":false,"description":"Master switch for the price list. Inactive price lists are not applied to opportunities or quotes regardless of dates."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"rules":{"type":"object","description":"Filter expression — a FieldFilter JSON object — deciding which records (e.g. accounts, opportunities) the price list applies to. Empty when it applies to all records. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/f/#FieldFilter"},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the price list becomes active. Empty means immediately."},"type":{"type":"integer","description":"Kind of price list: a regular price list (Standard), or a price schedule with special prices that take precedence over standard price lists while active (Scheduled).\n\nInteger enum value: 1 - Standard, 2 - Scheduled","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Regular price list that offers product prices to matching records.","2":"Price schedule with special prices; while active, its lowest applicable price takes precedence over standard price lists."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"product_price_list_prices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProductPriceListPrice record."}},"description":"Related ProductPriceListPrice record; see 'updateProductPriceListPriceInput' for its fields."},"description":"Per-product, per-currency prices configured in the price list."}}},"batchProductPriceListInput":{"description":"Field values of a ProductPriceList record to create, or to update when its id is set.","properties":{"description":{"type":"string","example":"string","description":"Free-form description of the price list."},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the price list expires. Empty means open-ended."},"is_active":{"type":"boolean","example":false,"description":"Master switch for the price list. Inactive price lists are not applied to opportunities or quotes regardless of dates."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"rules":{"type":"object","description":"Filter expression — a FieldFilter JSON object — deciding which records (e.g. accounts, opportunities) the price list applies to. Empty when it applies to all records. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/f/#FieldFilter"},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the price list becomes active. Empty means immediately."},"type":{"type":"integer","description":"Kind of price list: a regular price list (Standard), or a price schedule with special prices that take precedence over standard price lists while active (Scheduled).\n\nInteger enum value: 1 - Standard, 2 - Scheduled","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Regular price list that offers product prices to matching records.","2":"Price schedule with special prices; while active, its lowest applicable price takes precedence over standard price lists."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"product_price_list_prices":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProductPriceListPrice record."}},"description":"Related ProductPriceListPrice record; see 'updateProductPriceListPriceInput' for its fields."},"description":"Per-product, per-currency prices configured in the price list."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProductPriceListPrice":{"description":"Price of a product in one currency within a price list.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"currency":{"type":"string","format":"uri","description":"Currency the price value is denominated in.\n\nRelated Currency record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Currency' for its fields."},"product":{"type":"string","format":"uri","description":"Product the price applies to.\n\nRelated Product record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Product' for its fields."},"product_price_list":{"type":"string","format":"uri","description":"Price list the price belongs to.\n\nRelated ProductPriceList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProductPriceList' for its fields."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency the price is denominated in."},"price":{"type":"number","format":"double","example":4.32,"description":"Price amount stored at 6-decimal precision; values set via the API are rounded."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product the price applies to."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the price list this price belongs to."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-price access controls (e.g. which user roles can override this price). Stored as a JSON object."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","currency","product","product_price_list","currency_id","product_id","product_price_list_id","settings"]},"createProductPriceListPriceInput":{"description":"Field values of a new ProductPriceListPrice record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency the price is denominated in."},"price":{"type":"number","format":"double","example":4.32,"description":"Price amount stored at 6-decimal precision; values set via the API are rounded."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product the price applies to."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the price list this price belongs to."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-price access controls (e.g. which user roles can override this price). Stored as a JSON object."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["currency_id","product_id","product_price_list_id","settings"]},"updateProductPriceListPriceInput":{"description":"Field values to change on a ProductPriceListPrice record; fields left out keep their values.","properties":{"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency the price is denominated in."},"price":{"type":"number","format":"double","example":4.32,"description":"Price amount stored at 6-decimal precision; values set via the API are rounded."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product the price applies to."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the price list this price belongs to."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-price access controls (e.g. which user roles can override this price). Stored as a JSON object."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchProductPriceListPriceInput":{"description":"Field values of a ProductPriceListPrice record to create, or to update when its id is set.","properties":{"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency the price is denominated in."},"price":{"type":"number","format":"double","example":4.32,"description":"Price amount stored at 6-decimal precision; values set via the API are rounded."},"product_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product the price applies to."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the price list this price belongs to."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-price access controls (e.g. which user roles can override this price). Stored as a JSON object."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProductType":{"description":"Product type that classifies products and defines their form.","properties":{"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"form_edit_api":{"type":"object","description":"Typed, read-only view of a form layout of this type: form_edit_api mirrors the edit form (form_edit), form_lost_api the form shown when archiving as lost (form_lost)."},"can_change_readonly":{"type":"boolean","example":false,"description":"False for types whose read-only setting is fixed, such as the recurrent appointment type; true otherwise."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"oppty_product_relation_type":{"type":"string","format":"uri","description":"Opportunity / quote line-item type paired with this product type. Drives the form used when adding products of this type as line items.\n\nRelated OpptyProductRelationType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyProductRelationType' for its fields."},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing products of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the product type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"oppty_product_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the paired opportunity/quote line-item type."},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["has_draft","is_delete_protected","form_edit_api","id","oppty_product_relation_type","is_readonly","name","oppty_product_relation_type_id"]},"createProductTypeInput":{"description":"Field values of a new ProductType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing products of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the product type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_readonly","name"]},"updateProductTypeInput":{"description":"Field values to change on a ProductType record; fields left out keep their values.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing products of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the product type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchProductTypeInput":{"description":"Field values of a ProductType record to create, or to update when its id is set.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing products of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"is_readonly":{"type":"boolean","example":false,"description":"True when the product type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Profile":{"description":"Saved view of an app screen (e.g. leads, accounts or opportunities) with its filter, layout and charts, optionally shared with others.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User who owns the screen profile.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"sync_entity":{"type":"string","format":"uri","description":"Specific record this profile is synchronized to. Set only when sync_enabled is true.\n\nRelated Report record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Report' for its fields."},"entity":{"type":"integer","description":"Application screen the profile (saved view) belongs to, such as the leads, accounts or opportunities screen. For custom entity screens, entity_api_name identifies the custom entity.\n\nInteger enum value: 1 - Pipelinescreen, 2 - Timelinescreen, 3 - Archivescreen, 4 - Leadscreen, 6 - Accountscreen, 7 - Contactscreen, 8 - Activityscreen, 9 - Feedscreen, 10 - Hrmscreen, 11 - Auditscreen, 12 - Navigator, 13 - Insightsscreen, 14 - Indicatorsscreen, 15 - Conversionsscreen, 16 - Lifecyclescreen, 17 - Feedscreen2, 18 - ProductScreen, 19 - Projectscreen, 20 - Forecastscreen, 21 - LeadArchivescreen, 22 - TargetScreen, 23 - Quotescreen, 24 - QuoteArchivescreen, 25 - Approvalscreen, 26 - CustomEntityscreen, 27 - AccountArchivescreen, 28 - ContactArchivescreen, 29 - FeedDetailScreen, 30 - BetterNavigatorscreen, 31 - FeedEmailscreen, 32 - FeedEmailDetailScreen, 33 - EmailScreen","example":1,"enum":[1,2,3,4,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33],"x-enumDescriptions":{"1":"Opportunities screen (pipeline view of open opportunities).","2":"Legacy value; no longer used.","3":"Archive of closed (won or lost) opportunities.","4":"Screen listing open leads.","6":"Screen listing accounts.","7":"Screen listing contacts.","8":"Screen listing tasks and appointments.","9":"Legacy value of the original Feed screen; replaced by Feedscreen2.","10":"Legacy value; no longer used.","11":"Legacy value; no longer used.","12":"Original Navigator screen.","13":"Insights area: overview of sales performance.","14":"Insights area: key sales indicators.","15":"Insights area: conversion rates between pipeline steps.","16":"Insights area: lifecycle of leads and opportunities.","17":"Feed screen showing the stream of activities, emails and other updates.","18":"Screen listing products.","19":"Screen listing projects.","20":"Sales forecast screen.","21":"Archive of lost or qualified leads.","22":"Sales targets screen.","23":"Screen listing open quotes.","24":"Archive of closed quotes.","25":"Screen listing approval requests.","26":"Screen listing records of a custom entity; the profile identifies the custom entity.","27":"Archive of archived accounts.","28":"Archive of archived contacts.","29":"Feed tab on a record's detail screen.","30":"Current Navigator screen with configurable widgets.","31":"Email view of the Feed screen.","32":"Email feed tab on a record's detail screen.","33":"Screen listing emails."}},"entity_api_name":{"type":"string","example":"string","description":"API name of the custom entity this profile applies to. Set only when the profile targets a custom entity screen; otherwise empty."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Layout and chart configuration of the screen profile, stored as a JSON document. This payload conforms to the `ProfileSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ProfileSettings.json","description":"ProfileSettings JSON Schema"}},"share_mode":{"type":"integer","description":"Who besides the owner can use the profile: nobody (Private), selected users and sales units (Standard), or all users.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"sync_enabled":{"type":"boolean","example":false,"description":"When true, changes to the profile are propagated to records linked via ProfileRelation; when false, the profile is detached from the records."},"sync_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the synchronized record."},"type":{"type":"integer","description":"Whether the profile lists the records matching its filter (Dynamic) or a fixed list of records added to it explicitly (Static).\n\nInteger enum value: 1 - Dynamic, 2 - Static","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Records are selected by the profile's filter.","2":"Static list of records added explicitly."}},"use_lang":{"type":"boolean","example":false,"description":"When true, the profile name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"pipelines":{"type":"array","items":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000"},"description":"For pipeline-screen profiles, ids of the pipelines included in the profile configuration; empty for profiles on other screens."}},"required":["is_delete_protected","id","owner","entity","name","owner_id","settings","pipelines"]},"ProfileRelation":{"description":"Record added explicitly to a static saved view (profile).","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account this profile is linked to, when applicable.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact this profile is linked to, when applicable.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"custom_entity":{"type":"string","format":"uri","description":"Custom entity record this profile is linked to, when applicable.\n\nRelated CustomEntity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntity' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead this profile is linked to. Set when lead_oppty_id resolves to a Lead.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity this profile is linked to. Set when lead_oppty_id resolves to an Opportunity.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"profile":{"type":"string","format":"uri","description":"Screen profile this relation links to a specific record.\n\nRelated Profile record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Profile' for its fields."},"project":{"type":"string","format":"uri","description":"Project this profile is linked to, when applicable.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote this profile is linked to, when applicable.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not pointing to one."},"profile_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the screen profile."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."}},"required":["is_delete_protected","id","profile","profile_id"]},"createProfileRelationInput":{"description":"Field values of a new ProfileRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not pointing to one."},"profile_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the screen profile."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."}},"required":["profile_id"]},"updateProfileRelationInput":{"description":"Field values to change on a ProfileRelation record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not pointing to one."},"profile_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the screen profile."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."}}},"batchProfileRelationInput":{"description":"Field values of a ProfileRelation record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead or opportunity, or empty when not pointing to one."},"profile_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the screen profile."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProfileSharingClientRelation":{"description":"Share of a saved view (profile) with an individual user.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User granted shared access to the profile.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"profile":{"type":"string","format":"uri","description":"Screen profile being shared.\n\nRelated Profile record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Profile' for its fields."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"profile_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared profile."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","client","profile","client_id","profile_id"]},"ProfileSharingSalesUnitRelation":{"description":"Share of a saved view (profile) with a sales unit.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"profile":{"type":"string","format":"uri","description":"Screen profile being shared.\n\nRelated Profile record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Profile' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit granted shared access to the profile.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"profile_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared profile."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","profile","unit","profile_id","unit_id"]},"Project":{"description":"Project delivered for an account or run internally, with its objectives, activities and progress.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account this project is delivered for, or empty for internal projects without an external account.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"currency_exchange_rates_list":{"type":"string","format":"uri","description":"Currency exchange rate list used to convert monetary fields linked to this project. Empty to inherit the team space default.\n\nRelated CurrencyExchangeRatesList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRatesList' for its fields."},"owner":{"type":"string","format":"uri","description":"Sales user who owns this project.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"project_type":{"type":"string","format":"uri","description":"Project type that classifies this project. Project types are configurable per team space and drive which form, fields and objectives apply.\n\nRelated ProjectType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProjectType' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit this project is assigned to. Determines which team members can see the record under unit-based sharing.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the related account."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this project."},"description":{"type":"string","example":"string","description":"Free-form description of the project."},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Planned end date of the project. Must be on or after start_date when both are set."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project owner."},"project_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project type that classifies this project."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the project starts."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"revenue_goal":{"type":"object","properties":{"base_value":{"type":"number","format":"double","example":"4.32","description":"Value in the base currency of the space. If empty, it is calculated from value_foreign at the current exchange rate."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency of value_foreign."},"value_foreign":{"type":"number","format":"double","example":"4.32","description":"Value in the currency set by currency_id. If empty, it is calculated from base_value at the current exchange rate."}},"required":["base_value","currency_id","value_foreign"],"description":"Target revenue of the project, stored in the team space base currency with the foreign value and currency code preserved alongside."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Documents linked to this project."},"sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProjectSharingSalesUnitRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProjectSharingSalesUnitRelation' for its fields."},"description":"Sales units that have been granted shared access to this project. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProjectSharingClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProjectSharingClientRelation' for its fields."},"description":"Users that have been granted shared access to this project. Editable only when share_mode allows user sharing."},"primary_contact":{"type":"string","format":"uri","description":"Primary contact of this project. Set automatically from the contact relation marked as primary.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"contact_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProjectContactRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProjectContactRelation' for its fields."},"description":"Contacts linked to this project, including the primary-contact flag."},"tags":{"type":"array","items":{"type":"string","format":"uri","description":"Related TagRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TagRelation' for its fields."},"description":"Tag labels applied to this project."},"static_profiles":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProfileRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProfileRelation' for its fields."},"description":"Saved view profiles this project currently matches."},"objectives":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProjectObjective record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProjectObjective' for its fields."},"description":"Objectives defined for this project, sorted by display order."},"is_favorite":{"type":"boolean","example":false,"description":"True when the current authenticated user has marked this project as favorite. Per-user."},"status":{"type":"integer","description":"Current status of the project (NotStarted, InProgress, Completed). Read-only; derived from is_completed and the underlying activity progress.\n\nInteger enum value: 1 - NotStarted, 2 - InProgress, 4 - Completed","example":1,"enum":[1,2,4],"x-enumDescriptions":{"1":"The project's start date is in the future.","2":"The project is running.","4":"The project is marked completed or its end date has passed."}},"completion_rate":{"type":"number","format":"double","example":"4.32","description":"Percentage of activities (tasks and appointments) on this project that are completed. Read-only; computed by Coevera."},"activities_total":{"type":"number","format":"double","example":"4.32","description":"Total number of activities (tasks and appointments) linked to this project. Read-only; computed by Coevera."},"activities_completed":{"type":"number","format":"double","example":"4.32","description":"Number of completed activities on this project. Read-only; computed by Coevera."},"formatted_name":{"type":"string","example":"string","description":"Display version of the project name, used in lists and references."},"modified_by_user":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent modification made by an end user (excluding system changes). Read-only; computed by Coevera."}},"required":["is_delete_protected","id","owner","project_type","unit","end_date","name","owner_id","revenue_goal","is_favorite","status","formatted_name"]},"createProjectInput":{"description":"Field values of a new Project record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the related account."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this project."},"description":{"type":"string","example":"string","description":"Free-form description of the project."},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Planned end date of the project. Must be on or after start_date when both are set."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project owner."},"project_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project type that classifies this project."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the project starts."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"revenue_goal":{"type":"object","properties":{"base_value":{"type":"number","format":"double","example":"4.32","description":"Value in the base currency of the space. If empty, it is calculated from value_foreign at the current exchange rate."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency of value_foreign."},"value_foreign":{"type":"number","format":"double","example":"4.32","description":"Value in the currency set by currency_id. If empty, it is calculated from base_value at the current exchange rate."}},"required":["base_value","currency_id","value_foreign"],"description":"Target revenue of the project, stored in the team space base currency with the foreign value and currency code preserved alongside."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Documents linked to this project."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProjectSharingSalesUnitRelation record."}},"description":"Related ProjectSharingSalesUnitRelation record; see 'createProjectSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this project. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProjectSharingClientRelation record."}},"description":"Related ProjectSharingClientRelation record; see 'createProjectSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this project. Editable only when share_mode allows user sharing."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProjectContactRelation record."}},"description":"Related ProjectContactRelation record; see 'createProjectContactRelationInput' for its fields."},"description":"Contacts linked to this project, including the primary-contact flag."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'createTagRelationInput' for its fields."},"description":"Tag labels applied to this project."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'createProfileRelationInput' for its fields."},"description":"Saved view profiles this project currently matches."}},"required":["end_date","name","owner_id","revenue_goal"]},"updateProjectInput":{"description":"Field values to change on a Project record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the related account."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this project."},"description":{"type":"string","example":"string","description":"Free-form description of the project."},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Planned end date of the project. Must be on or after start_date when both are set."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project owner."},"project_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project type that classifies this project."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the project starts."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"revenue_goal":{"type":"object","properties":{"base_value":{"type":"number","format":"double","example":"4.32","description":"Value in the base currency of the space. If empty, it is calculated from value_foreign at the current exchange rate."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency of value_foreign."},"value_foreign":{"type":"number","format":"double","example":"4.32","description":"Value in the currency set by currency_id. If empty, it is calculated from base_value at the current exchange rate."}},"required":["base_value","currency_id","value_foreign"],"description":"Target revenue of the project, stored in the team space base currency with the foreign value and currency code preserved alongside."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this project."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProjectSharingSalesUnitRelation record."}},"description":"Related ProjectSharingSalesUnitRelation record; see 'updateProjectSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this project. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProjectSharingClientRelation record."}},"description":"Related ProjectSharingClientRelation record; see 'updateProjectSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this project. Editable only when share_mode allows user sharing."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProjectContactRelation record."}},"description":"Related ProjectContactRelation record; see 'updateProjectContactRelationInput' for its fields."},"description":"Contacts linked to this project, including the primary-contact flag."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this project."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'updateProfileRelationInput' for its fields."},"description":"Saved view profiles this project currently matches."}}},"batchProjectInput":{"description":"Field values of a Project record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the related account."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this project."},"description":{"type":"string","example":"string","description":"Free-form description of the project."},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Planned end date of the project. Must be on or after start_date when both are set."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project owner."},"project_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project type that classifies this project."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when the project starts."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"revenue_goal":{"type":"object","properties":{"base_value":{"type":"number","format":"double","example":"4.32","description":"Value in the base currency of the space. If empty, it is calculated from value_foreign at the current exchange rate."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency of value_foreign."},"value_foreign":{"type":"number","format":"double","example":"4.32","description":"Value in the currency set by currency_id. If empty, it is calculated from base_value at the current exchange rate."}},"required":["base_value","currency_id","value_foreign"],"description":"Target revenue of the project, stored in the team space base currency with the foreign value and currency code preserved alongside."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this project."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProjectSharingSalesUnitRelation record."}},"description":"Related ProjectSharingSalesUnitRelation record; see 'updateProjectSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this project. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProjectSharingClientRelation record."}},"description":"Related ProjectSharingClientRelation record; see 'updateProjectSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this project. Editable only when share_mode allows user sharing."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProjectContactRelation record."}},"description":"Related ProjectContactRelation record; see 'updateProjectContactRelationInput' for its fields."},"description":"Contacts linked to this project, including the primary-contact flag."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this project."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'updateProfileRelationInput' for its fields."},"description":"Saved view profiles this project currently matches."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProjectContactRelation":{"description":"Link between a project and a contact, marking the primary contact.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact":{"type":"string","format":"uri","description":"Contact linked to the project.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"project":{"type":"string","format":"uri","description":"Project the contact is linked to.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to the project."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project the contact is linked to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","contact","project","contact_id","is_primary","project_id"]},"createProjectContactRelationInput":{"description":"Field values of a new ProjectContactRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to the project."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project the contact is linked to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["contact_id","is_primary","project_id"]},"updateProjectContactRelationInput":{"description":"Field values to change on a ProjectContactRelation record; fields left out keep their values.","properties":{"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to the project."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project the contact is linked to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchProjectContactRelationInput":{"description":"Field values of a ProjectContactRelation record to create, or to update when its id is set.","properties":{"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to the project."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project the contact is linked to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProjectDataExRelation":{"description":"Option selected in a multi-select checkbox field of a project.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"data":{"type":"string","format":"uri","description":"Option selected in the multi-select field; it belongs to the data set given by data_set_id.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"project":{"type":"string","format":"uri","description":"Project on which the option is selected.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project on which the option is selected."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","data","project","data_id","data_set_id","project_id"]},"ProjectKPI":{"description":"KPI event of a project (its completion), used in activity reporting.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User who triggered the KPI event (project completion).\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"owner":{"type":"string","format":"uri","description":"Project owner at the time the KPI event occurred.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"project":{"type":"string","format":"uri","description":"Project this KPI event relates to.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the triggering user belonged to at the time of the event.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: Create, ProjectCompleted or LastModified.\n\nInteger enum value: 1 - ProjectCompleted, 2 - Create, 3 - LastModified","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The project was completed.","2":"The project was created.","3":"The project was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project owner at the time of the event."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project this KPI event relates to."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","owner","project","kpi","owner_id","project_id"]},"createProjectKPIInput":{"description":"Field values of a new ProjectKPI record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: Create, ProjectCompleted or LastModified.\n\nInteger enum value: 1 - ProjectCompleted, 2 - Create, 3 - LastModified","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The project was completed.","2":"The project was created.","3":"The project was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project owner at the time of the event."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project this KPI event relates to."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["kpi","owner_id","project_id"]},"updateProjectKPIInput":{"description":"Field values to change on a ProjectKPI record; fields left out keep their values.","properties":{"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: Create, ProjectCompleted or LastModified.\n\nInteger enum value: 1 - ProjectCompleted, 2 - Create, 3 - LastModified","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The project was completed.","2":"The project was created.","3":"The project was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project owner at the time of the event."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project this KPI event relates to."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchProjectKPIInput":{"description":"Field values of a ProjectKPI record to create, or to update when its id is set.","properties":{"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: Create, ProjectCompleted or LastModified.\n\nInteger enum value: 1 - ProjectCompleted, 2 - Create, 3 - LastModified","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The project was completed.","2":"The project was created.","3":"The project was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project owner at the time of the event."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project this KPI event relates to."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProjectObjective":{"description":"Objective (goal) of a project.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"project":{"type":"string","format":"uri","description":"Project this objective belongs to.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project this objective belongs to. Set on create; cannot be changed afterwards.","readOnly":true},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the row within its sibling set; lower values appear first. The platform reorders neighbouring rows automatically when a value is inserted or changed."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","project","name","project_id","sort_order"]},"createProjectObjectiveInput":{"description":"Field values of a new ProjectObjective record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project this objective belongs to. Set on create; cannot be changed afterwards.","readOnly":true},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the row within its sibling set; lower values appear first. The platform reorders neighbouring rows automatically when a value is inserted or changed."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["name","project_id","sort_order"]},"updateProjectObjectiveInput":{"description":"Field values to change on a ProjectObjective record; fields left out keep their values.","properties":{"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the row within its sibling set; lower values appear first. The platform reorders neighbouring rows automatically when a value is inserted or changed."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchProjectObjectiveInput":{"description":"Field values of a ProjectObjective record to create, or to update when its id is set.","properties":{"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the row within its sibling set; lower values appear first. The platform reorders neighbouring rows automatically when a value is inserted or changed."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProjectSharingClientRelation":{"description":"Share of a project with an individual user, with the access level granted.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User the project is shared with.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"project":{"type":"string","format":"uri","description":"Project being shared.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared project."},"role":{"type":"integer","description":"Access the sharing gives the user on the project: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","client","project","client_id","project_id"]},"createProjectSharingClientRelationInput":{"description":"Field values of a new ProjectSharingClientRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared project."},"role":{"type":"integer","description":"Access the sharing gives the user on the project: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["client_id","project_id"]},"updateProjectSharingClientRelationInput":{"description":"Field values to change on a ProjectSharingClientRelation record; fields left out keep their values.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared project."},"role":{"type":"integer","description":"Access the sharing gives the user on the project: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchProjectSharingClientRelationInput":{"description":"Field values of a ProjectSharingClientRelation record to create, or to update when its id is set.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared project."},"role":{"type":"integer","description":"Access the sharing gives the user on the project: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProjectSharingSalesUnitRelation":{"description":"Share of a project with a sales unit, with the access level granted.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"project":{"type":"string","format":"uri","description":"Project being shared.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the project is shared with.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared project."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the project: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","project","unit","project_id","unit_id"]},"createProjectSharingSalesUnitRelationInput":{"description":"Field values of a new ProjectSharingSalesUnitRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared project."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the project: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["project_id","unit_id"]},"updateProjectSharingSalesUnitRelationInput":{"description":"Field values to change on a ProjectSharingSalesUnitRelation record; fields left out keep their values.","properties":{"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared project."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the project: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchProjectSharingSalesUnitRelationInput":{"description":"Field values of a ProjectSharingSalesUnitRelation record to create, or to update when its id is set.","properties":{"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared project."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the project: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ProjectType":{"description":"Project type that classifies projects and defines their form and icon.","properties":{"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"form_edit_api":{"type":"object","description":"Typed, read-only view of a form layout of this type: form_edit_api mirrors the edit form (form_edit), form_lost_api the form shown when archiving as lost (form_lost)."},"can_change_readonly":{"type":"boolean","example":false,"description":"False for types whose read-only setting is fixed, such as the recurrent appointment type; true otherwise."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing projects of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"icon":{"type":"integer","description":"Icon used to display projects of this type in the UI (e.g. GeneralIcon, Account).\n\nInteger enum value: 0 - GeneralIcon, 1 - Account","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"General project icon; the default.","1":"Account icon."}},"is_readonly":{"type":"boolean","example":false,"description":"True when the project type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["has_draft","is_delete_protected","form_edit_api","id","is_readonly","name","settings"]},"createProjectTypeInput":{"description":"Field values of a new ProjectType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing projects of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"icon":{"type":"integer","description":"Icon used to display projects of this type in the UI (e.g. GeneralIcon, Account).\n\nInteger enum value: 0 - GeneralIcon, 1 - Account","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"General project icon; the default.","1":"Account icon."}},"is_readonly":{"type":"boolean","example":false,"description":"True when the project type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_readonly","name","settings"]},"updateProjectTypeInput":{"description":"Field values to change on a ProjectType record; fields left out keep their values.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing projects of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"icon":{"type":"integer","description":"Icon used to display projects of this type in the UI (e.g. GeneralIcon, Account).\n\nInteger enum value: 0 - GeneralIcon, 1 - Account","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"General project icon; the default.","1":"Account icon."}},"is_readonly":{"type":"boolean","example":false,"description":"True when the project type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchProjectTypeInput":{"description":"Field values of a ProjectType record to create, or to update when its id is set.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing projects of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"icon":{"type":"integer","description":"Icon used to display projects of this type in the UI (e.g. GeneralIcon, Account).\n\nInteger enum value: 0 - GeneralIcon, 1 - Account","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"General project icon; the default.","1":"Account icon."}},"is_readonly":{"type":"boolean","example":false,"description":"True when the project type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Quote":{"description":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"currency_exchange_rates_list":{"type":"string","format":"uri","description":"Currency exchange rate list used to convert monetary fields linked to this quote. Empty to inherit the team space default.\n\nRelated CurrencyExchangeRatesList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRatesList' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity this quote was prepared for. Empty for standalone quotes.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"owner":{"type":"string","format":"uri","description":"Sales user who owns this quote.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"product_currency":{"type":"string","format":"uri","description":"Currency used for product line-item prices on this quote.\n\nRelated Currency record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Currency' for its fields."},"product_price_list":{"type":"string","format":"uri","description":"Product price list used to populate prices for product line items added to this quote. Empty to use catalog defaults.\n\nRelated ProductPriceList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProductPriceList' for its fields."},"quote_type":{"type":"string","format":"uri","description":"Quote type that classifies this quote. Each type maps to one quote process and drives which form, fields and stages apply.\n\nRelated QuoteType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'QuoteType' for its fields."},"reason_of_close":{"type":"string","format":"uri","description":"Configurable reason recorded when the quote is archived (lost). Required when the lost form mandates it.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"step":{"type":"string","format":"uri","description":"Quote-process step the quote is currently sitting in. Reaching the last step in the process marks the quote as accepted.\n\nRelated Step record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Step' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit this quote is assigned to. Determines which team members can see the record under unit-based sharing.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this quote."},"description":{"type":"string","example":"string","description":"Free-form description of the quote."},"expiration_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date after which the quote is no longer considered valid."},"is_archived":{"type":"boolean","example":false,"description":"True when the quote has been archived (lost). Archived quotes remain readable but are hidden from active lists and cannot be edited until reactivated."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote owner."},"product_currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency used for product line-item prices on this quote."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the price list that supplies prices for product line items added to this quote, or empty to use catalog defaults."},"product_sections":{"type":"object","description":"Product sections grouping the record's line items, as a JSON array of {\"id\": <UUID>, \"name\": <string>} objects. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProductSection This payload conforms to the `ProductSection` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ProductSection.json","description":"ProductSection JSON Schema"}},"quick_account_email":{"type":"string","example":"string","description":"Free-text company email captured at quote creation when no Account record has been linked yet."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name captured at quote creation when no Account record has been linked yet."},"quick_account_phone":{"type":"string","example":"string","description":"Free-text company phone captured at quote creation when no Account record has been linked yet."},"quick_contact_name":{"type":"string","example":"string","description":"Free-text contact name captured at quote creation when no Contact record has been linked yet."},"quick_email":{"type":"string","example":"string","description":"Free-text contact email captured at quote creation when no Contact record has been linked yet."},"quick_phone":{"type":"string","example":"string","description":"Free-text contact phone captured at quote creation when no Contact record has been linked yet."},"quote_number":{"type":"string","example":"string","description":"Auto-generated sequential identifier of the quote, used for human-readable reference.","readOnly":true},"quote_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote type that classifies this quote."},"reason_of_close_description":{"type":"string","example":"string","description":"Free-form note explaining why the quote was archived (lost)."},"reason_of_close_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reason of close option selected when the quote was archived (lost)."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote-process step."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"version":{"type":"integer","format":"int32","example":1,"description":"Revision number of the quote, incremented when a new version of the same quote is created."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"total_amount":{"type":"object","properties":{"base_value":{"type":"number","format":"double","example":"4.32","description":"Value in the base currency of the space. If empty, it is calculated from value_foreign at the current exchange rate."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency of value_foreign."},"value_foreign":{"type":"number","format":"double","example":"4.32","description":"Value in the currency set by currency_id. If empty, it is calculated from base_value at the current exchange rate."}},"required":["base_value","currency_id","value_foreign"],"description":"Total monetary value of the quote in the team space base currency, with the foreign value and currency code preserved alongside."},"product_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related OpptyProductRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyProductRelation' for its fields."},"description":"Product line items on this quote. Each entry holds the product, quantity, price and discount that contribute to total_amount."},"primary_contact":{"type":"string","format":"uri","description":"Primary contact of this quote. Set automatically from the contact relation marked as primary.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"primary_account":{"type":"string","format":"uri","description":"Primary account of this quote. Set automatically from the account relation marked as primary.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"contact_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related QuoteContactRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'QuoteContactRelation' for its fields."},"description":"Contacts linked to this quote."},"account_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related QuoteAccountRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'QuoteAccountRelation' for its fields."},"description":"Accounts linked to this quote, including the primary-account flag."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Documents linked to this quote."},"sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related QuoteSharingSalesUnitRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'QuoteSharingSalesUnitRelation' for its fields."},"description":"Sales units that have been granted shared access to this quote. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related QuoteSharingClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'QuoteSharingClientRelation' for its fields."},"description":"Users that have been granted shared access to this quote. Editable only when share_mode allows user sharing."},"status":{"type":"integer","description":"Current status of the quote (Open, Lost, Accepted). Read-only; derived from the current step and the archived flag.\n\nInteger enum value: 1 - Open, 2 - Lost, 3 - Accepted","example":1,"enum":[1,2,3],"readOnly":true,"x-enumDescriptions":{"1":"The quote is active.","2":"The quote was archived without being accepted.","3":"The quote reached the last step of its quote process."}},"formatted_name":{"type":"string","example":"string","description":"Display version of the quote name, used in lists and references."},"is_favorite":{"type":"boolean","example":false,"description":"True when the current authenticated user has marked this quote as favorite. Per-user."},"is_active_in_opportunity":{"type":"boolean","example":false,"description":"If quote is set as active in opportunity."},"modified_by_user":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent modification made by an end user (excluding system changes). Read-only; computed by Coevera."},"static_profiles":{"type":"array","items":{"type":"string","format":"uri","description":"Related ProfileRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProfileRelation' for its fields."},"description":"Saved view profiles this quote currently matches."},"tags":{"type":"array","items":{"type":"string","format":"uri","description":"Related TagRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TagRelation' for its fields."},"description":"Tag labels applied to this quote."}},"required":["is_delete_protected","id","owner","product_currency","quote_type","step","unit","name","owner_id","step_id","total_amount","status","formatted_name","is_favorite"]},"createQuoteInput":{"description":"Field values of a new Quote record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this quote."},"description":{"type":"string","example":"string","description":"Free-form description of the quote."},"expiration_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date after which the quote is no longer considered valid."},"is_archived":{"type":"boolean","example":false,"description":"True when the quote has been archived (lost). Archived quotes remain readable but are hidden from active lists and cannot be edited until reactivated."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote owner."},"product_currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency used for product line-item prices on this quote."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the price list that supplies prices for product line items added to this quote, or empty to use catalog defaults."},"product_sections":{"type":"object","description":"Product sections grouping the record's line items, as a JSON array of {\"id\": <UUID>, \"name\": <string>} objects. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProductSection This payload conforms to the `ProductSection` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ProductSection.json","description":"ProductSection JSON Schema"}},"quick_account_email":{"type":"string","example":"string","description":"Free-text company email captured at quote creation when no Account record has been linked yet."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name captured at quote creation when no Account record has been linked yet."},"quick_account_phone":{"type":"string","example":"string","description":"Free-text company phone captured at quote creation when no Account record has been linked yet."},"quick_contact_name":{"type":"string","example":"string","description":"Free-text contact name captured at quote creation when no Contact record has been linked yet."},"quick_email":{"type":"string","example":"string","description":"Free-text contact email captured at quote creation when no Contact record has been linked yet."},"quick_phone":{"type":"string","example":"string","description":"Free-text contact phone captured at quote creation when no Contact record has been linked yet."},"quote_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote type that classifies this quote."},"reason_of_close_description":{"type":"string","example":"string","description":"Free-form note explaining why the quote was archived (lost)."},"reason_of_close_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reason of close option selected when the quote was archived (lost)."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote-process step."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"version":{"type":"integer","format":"int32","example":1,"description":"Revision number of the quote, incremented when a new version of the same quote is created."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"total_amount":{"type":"object","properties":{"base_value":{"type":"number","format":"double","example":"4.32","description":"Value in the base currency of the space. If empty, it is calculated from value_foreign at the current exchange rate."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency of value_foreign."},"value_foreign":{"type":"number","format":"double","example":"4.32","description":"Value in the currency set by currency_id. If empty, it is calculated from base_value at the current exchange rate."}},"required":["base_value","currency_id","value_foreign"],"description":"Total monetary value of the quote in the team space base currency, with the foreign value and currency code preserved alongside."},"product_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Related OpptyProductRelation record; see 'createOpptyProductRelationInput' for its fields."},"description":"Product line items on this quote. Each entry holds the product, quantity, price and discount that contribute to total_amount."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related QuoteContactRelation record."}},"description":"Related QuoteContactRelation record; see 'createQuoteContactRelationInput' for its fields."},"description":"Contacts linked to this quote."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related QuoteAccountRelation record."}},"description":"Related QuoteAccountRelation record; see 'createQuoteAccountRelationInput' for its fields."},"description":"Accounts linked to this quote, including the primary-account flag."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Documents linked to this quote."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related QuoteSharingSalesUnitRelation record."}},"description":"Related QuoteSharingSalesUnitRelation record; see 'createQuoteSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this quote. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related QuoteSharingClientRelation record."}},"description":"Related QuoteSharingClientRelation record; see 'createQuoteSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this quote. Editable only when share_mode allows user sharing."},"is_active_in_opportunity":{"type":"boolean","example":false,"description":"If quote is set as active in opportunity."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'createProfileRelationInput' for its fields."},"description":"Saved view profiles this quote currently matches."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'createTagRelationInput' for its fields."},"description":"Tag labels applied to this quote."}},"required":["name","owner_id","step_id","total_amount"]},"updateQuoteInput":{"description":"Field values to change on a Quote record; fields left out keep their values.","properties":{"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this quote."},"description":{"type":"string","example":"string","description":"Free-form description of the quote."},"expiration_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date after which the quote is no longer considered valid."},"is_archived":{"type":"boolean","example":false,"description":"True when the quote has been archived (lost). Archived quotes remain readable but are hidden from active lists and cannot be edited until reactivated."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote owner."},"product_currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency used for product line-item prices on this quote."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the price list that supplies prices for product line items added to this quote, or empty to use catalog defaults."},"product_sections":{"type":"object","description":"Product sections grouping the record's line items, as a JSON array of {\"id\": <UUID>, \"name\": <string>} objects. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProductSection This payload conforms to the `ProductSection` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ProductSection.json","description":"ProductSection JSON Schema"}},"quick_account_email":{"type":"string","example":"string","description":"Free-text company email captured at quote creation when no Account record has been linked yet."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name captured at quote creation when no Account record has been linked yet."},"quick_account_phone":{"type":"string","example":"string","description":"Free-text company phone captured at quote creation when no Account record has been linked yet."},"quick_contact_name":{"type":"string","example":"string","description":"Free-text contact name captured at quote creation when no Contact record has been linked yet."},"quick_email":{"type":"string","example":"string","description":"Free-text contact email captured at quote creation when no Contact record has been linked yet."},"quick_phone":{"type":"string","example":"string","description":"Free-text contact phone captured at quote creation when no Contact record has been linked yet."},"quote_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote type that classifies this quote."},"reason_of_close_description":{"type":"string","example":"string","description":"Free-form note explaining why the quote was archived (lost)."},"reason_of_close_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reason of close option selected when the quote was archived (lost)."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote-process step."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"version":{"type":"integer","format":"int32","example":1,"description":"Revision number of the quote, incremented when a new version of the same quote is created."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"total_amount":{"type":"object","properties":{"base_value":{"type":"number","format":"double","example":"4.32","description":"Value in the base currency of the space. If empty, it is calculated from value_foreign at the current exchange rate."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency of value_foreign."},"value_foreign":{"type":"number","format":"double","example":"4.32","description":"Value in the currency set by currency_id. If empty, it is calculated from base_value at the current exchange rate."}},"required":["base_value","currency_id","value_foreign"],"description":"Total monetary value of the quote in the team space base currency, with the foreign value and currency code preserved alongside."},"product_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Related OpptyProductRelation record; see 'updateOpptyProductRelationInput' for its fields."},"description":"Product line items on this quote. Each entry holds the product, quantity, price and discount that contribute to total_amount."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related QuoteContactRelation record."}},"description":"Related QuoteContactRelation record; see 'updateQuoteContactRelationInput' for its fields."},"description":"Contacts linked to this quote."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related QuoteAccountRelation record."}},"description":"Related QuoteAccountRelation record; see 'updateQuoteAccountRelationInput' for its fields."},"description":"Accounts linked to this quote, including the primary-account flag."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this quote."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related QuoteSharingSalesUnitRelation record."}},"description":"Related QuoteSharingSalesUnitRelation record; see 'updateQuoteSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this quote. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related QuoteSharingClientRelation record."}},"description":"Related QuoteSharingClientRelation record; see 'updateQuoteSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this quote. Editable only when share_mode allows user sharing."},"is_active_in_opportunity":{"type":"boolean","example":false,"description":"If quote is set as active in opportunity."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'updateProfileRelationInput' for its fields."},"description":"Saved view profiles this quote currently matches."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this quote."}}},"batchQuoteInput":{"description":"Field values of a Quote record to create, or to update when its id is set.","properties":{"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this quote."},"description":{"type":"string","example":"string","description":"Free-form description of the quote."},"expiration_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date after which the quote is no longer considered valid."},"is_archived":{"type":"boolean","example":false,"description":"True when the quote has been archived (lost). Archived quotes remain readable but are hidden from active lists and cannot be edited until reactivated."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote owner."},"product_currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency used for product line-item prices on this quote."},"product_price_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the price list that supplies prices for product line items added to this quote, or empty to use catalog defaults."},"product_sections":{"type":"object","description":"Product sections grouping the record's line items, as a JSON array of {\"id\": <UUID>, \"name\": <string>} objects. Validated on write. Full structure: https://developers.coevera.com/reference/graphql/types/p/#ProductSection This payload conforms to the `ProductSection` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ProductSection.json","description":"ProductSection JSON Schema"}},"quick_account_email":{"type":"string","example":"string","description":"Free-text company email captured at quote creation when no Account record has been linked yet."},"quick_account_name":{"type":"string","example":"string","description":"Free-text company name captured at quote creation when no Account record has been linked yet."},"quick_account_phone":{"type":"string","example":"string","description":"Free-text company phone captured at quote creation when no Account record has been linked yet."},"quick_contact_name":{"type":"string","example":"string","description":"Free-text contact name captured at quote creation when no Contact record has been linked yet."},"quick_email":{"type":"string","example":"string","description":"Free-text contact email captured at quote creation when no Contact record has been linked yet."},"quick_phone":{"type":"string","example":"string","description":"Free-text contact phone captured at quote creation when no Contact record has been linked yet."},"quote_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote type that classifies this quote."},"reason_of_close_description":{"type":"string","example":"string","description":"Free-form note explaining why the quote was archived (lost)."},"reason_of_close_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the reason of close option selected when the quote was archived (lost)."},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users). The matching sharing_units / sharing_clients lists control who is granted access.\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote-process step."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"version":{"type":"integer","format":"int32","example":1,"description":"Revision number of the quote, incremented when a new version of the same quote is created."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"total_amount":{"type":"object","properties":{"base_value":{"type":"number","format":"double","example":"4.32","description":"Value in the base currency of the space. If empty, it is calculated from value_foreign at the current exchange rate."},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency of value_foreign."},"value_foreign":{"type":"number","format":"double","example":"4.32","description":"Value in the currency set by currency_id. If empty, it is calculated from base_value at the current exchange rate."}},"required":["base_value","currency_id","value_foreign"],"description":"Total monetary value of the quote in the team space base currency, with the foreign value and currency code preserved alongside."},"product_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related OpptyProductRelation record."}},"description":"Related OpptyProductRelation record; see 'updateOpptyProductRelationInput' for its fields."},"description":"Product line items on this quote. Each entry holds the product, quantity, price and discount that contribute to total_amount."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related QuoteContactRelation record."}},"description":"Related QuoteContactRelation record; see 'updateQuoteContactRelationInput' for its fields."},"description":"Contacts linked to this quote."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related QuoteAccountRelation record."}},"description":"Related QuoteAccountRelation record; see 'updateQuoteAccountRelationInput' for its fields."},"description":"Accounts linked to this quote, including the primary-account flag."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this quote."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related QuoteSharingSalesUnitRelation record."}},"description":"Related QuoteSharingSalesUnitRelation record; see 'updateQuoteSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this quote. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related QuoteSharingClientRelation record."}},"description":"Related QuoteSharingClientRelation record; see 'updateQuoteSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this quote. Editable only when share_mode allows user sharing."},"is_active_in_opportunity":{"type":"boolean","example":false,"description":"If quote is set as active in opportunity."},"static_profiles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ProfileRelation record."}},"description":"Related ProfileRelation record; see 'updateProfileRelationInput' for its fields."},"description":"Saved view profiles this quote currently matches."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this quote."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"QuoteAccountRelation":{"description":"Link between a quote and an account, marking the primary account.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account linked to the quote.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote the account is linked to.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account linked to this quote."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote the account is linked to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","account","quote","account_id","is_primary","quote_id"]},"createQuoteAccountRelationInput":{"description":"Field values of a new QuoteAccountRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account linked to this quote."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote the account is linked to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["account_id","is_primary","quote_id"]},"updateQuoteAccountRelationInput":{"description":"Field values to change on a QuoteAccountRelation record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account linked to this quote."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote the account is linked to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchQuoteAccountRelationInput":{"description":"Field values of a QuoteAccountRelation record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account linked to this quote."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote the account is linked to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"QuoteContactRelation":{"description":"Link between a quote and a contact, marking the primary contact.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact":{"type":"string","format":"uri","description":"Contact linked to the quote.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote the contact is linked to.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to this quote."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote the contact is linked to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","contact","quote","contact_id","is_primary","quote_id"]},"createQuoteContactRelationInput":{"description":"Field values of a new QuoteContactRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to this quote."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote the contact is linked to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["contact_id","is_primary","quote_id"]},"updateQuoteContactRelationInput":{"description":"Field values to change on a QuoteContactRelation record; fields left out keep their values.","properties":{"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to this quote."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote the contact is linked to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchQuoteContactRelationInput":{"description":"Field values of a QuoteContactRelation record to create, or to update when its id is set.","properties":{"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact linked to this quote."},"is_primary":{"type":"boolean","example":false,"description":"True for the row that represents the primary related entity for this record. Setting is_primary to true on a row automatically clears it on any other primary row."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote the contact is linked to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"QuoteDataExRelation":{"description":"Option selected in a multi-select checkbox field of a quote.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"data":{"type":"string","format":"uri","description":"Option selected in the multi-select field; it belongs to the data set given by data_set_id.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote on which the option is selected.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote on which the option is selected."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","data","quote","data_id","data_set_id","quote_id"]},"createQuoteDataExRelationInput":{"description":"Field values of a new QuoteDataExRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote on which the option is selected."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["data_id","data_set_id","quote_id"]},"updateQuoteDataExRelationInput":{"description":"Field values to change on a QuoteDataExRelation record; fields left out keep their values.","properties":{"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote on which the option is selected."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchQuoteDataExRelationInput":{"description":"Field values of a QuoteDataExRelation record to create, or to update when its id is set.","properties":{"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the selected option."},"data_set_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the data set (the option list of a multi-select field) the selected option belongs to."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote on which the option is selected."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"QuoteKPI":{"description":"KPI event of a quote (e.g. created, accepted, archived or moved to another step), used in activity reporting.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User who triggered the KPI event (e.g. created the quote, accepted it, archived it, moved the record).\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"owner":{"type":"string","format":"uri","description":"Quote owner at the time the KPI event occurred.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote this KPI event relates to.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the triggering user belonged to at the time of the event.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: Create, Accept, Archive, LastMove or LastModified.\n\nInteger enum value: 1 - Create, 2 - Accept, 3 - Archive, 4 - LastMove, 5 - LastModified","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The quote was created.","2":"The quote was accepted.","3":"The quote was archived without being accepted.","4":"The quote entered its current step.","5":"The quote was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote owner at the time of the event."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote this KPI event relates to."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","owner","quote","kpi","owner_id","quote_id"]},"createQuoteKPIInput":{"description":"Field values of a new QuoteKPI record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: Create, Accept, Archive, LastMove or LastModified.\n\nInteger enum value: 1 - Create, 2 - Accept, 3 - Archive, 4 - LastMove, 5 - LastModified","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The quote was created.","2":"The quote was accepted.","3":"The quote was archived without being accepted.","4":"The quote entered its current step.","5":"The quote was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote owner at the time of the event."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote this KPI event relates to."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["kpi","owner_id","quote_id"]},"updateQuoteKPIInput":{"description":"Field values to change on a QuoteKPI record; fields left out keep their values.","properties":{"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: Create, Accept, Archive, LastMove or LastModified.\n\nInteger enum value: 1 - Create, 2 - Accept, 3 - Archive, 4 - LastMove, 5 - LastModified","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The quote was created.","2":"The quote was accepted.","3":"The quote was archived without being accepted.","4":"The quote entered its current step.","5":"The quote was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote owner at the time of the event."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote this KPI event relates to."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchQuoteKPIInput":{"description":"Field values of a QuoteKPI record to create, or to update when its id is set.","properties":{"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Application context in which the KPI event was triggered (e.g. browser, automation, third-party integration)."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who triggered the event."},"kpi":{"type":"integer","description":"KPI metric this event represents: Create, Accept, Archive, LastMove or LastModified.\n\nInteger enum value: 1 - Create, 2 - Accept, 3 - Archive, 4 - LastMove, 5 - LastModified","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"The quote was created.","2":"The quote was accepted.","3":"The quote was archived without being accepted.","4":"The quote entered its current step.","5":"The quote was last modified."}},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote owner at the time of the event."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote this KPI event relates to."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"QuoteProcess":{"description":"Quote process: the ordered steps that quotes of its quote types move through.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the quote process label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"steps":{"type":"array","items":{"$ref":"#/components/schemas/batchStepInput"},"description":"Steps that make up this quote process, in evaluation order."},"quote_types":{"type":"array","items":{"type":"string","format":"uri","description":"Related QuoteType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'QuoteType' for its fields."},"description":"Quote types that follow this quote process."}},"required":["is_delete_protected","id","name","steps","quote_types"]},"createQuoteProcessInput":{"description":"Field values of a new QuoteProcess record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the quote process label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"steps":{"type":"array","items":{"$ref":"#/components/schemas/batchStepInput"},"description":"Steps that make up this quote process, in evaluation order."}},"required":["name","steps"]},"updateQuoteProcessInput":{"description":"Field values to change on a QuoteProcess record; fields left out keep their values.","properties":{"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the quote process label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"steps":{"type":"array","items":{"$ref":"#/components/schemas/batchStepInput"},"description":"Steps that make up this quote process, in evaluation order."}}},"batchQuoteProcessInput":{"description":"Field values of a QuoteProcess record to create, or to update when its id is set.","properties":{"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the quote process label, encoded as an integer packing the RGB components: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"steps":{"type":"array","items":{"$ref":"#/components/schemas/batchStepInput"},"description":"Steps that make up this quote process, in evaluation order."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"QuoteSharingClientRelation":{"description":"Share of a quote with an individual user, with the access level granted.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User the quote is shared with.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote being shared.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared quote."},"role":{"type":"integer","description":"Access the sharing gives the user on the quote: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","client","quote","client_id","quote_id"]},"createQuoteSharingClientRelationInput":{"description":"Field values of a new QuoteSharingClientRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared quote."},"role":{"type":"integer","description":"Access the sharing gives the user on the quote: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["client_id","quote_id"]},"updateQuoteSharingClientRelationInput":{"description":"Field values to change on a QuoteSharingClientRelation record; fields left out keep their values.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared quote."},"role":{"type":"integer","description":"Access the sharing gives the user on the quote: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchQuoteSharingClientRelationInput":{"description":"Field values of a QuoteSharingClientRelation record to create, or to update when its id is set.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared quote."},"role":{"type":"integer","description":"Access the sharing gives the user on the quote: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"QuoteSharingSalesUnitRelation":{"description":"Share of a quote with a sales unit, with the access level granted.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"quote":{"type":"string","format":"uri","description":"Quote being shared.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the quote is shared with.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared quote."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the quote: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","quote","unit","quote_id","unit_id"]},"createQuoteSharingSalesUnitRelationInput":{"description":"Field values of a new QuoteSharingSalesUnitRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared quote."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the quote: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["quote_id","unit_id"]},"updateQuoteSharingSalesUnitRelationInput":{"description":"Field values to change on a QuoteSharingSalesUnitRelation record; fields left out keep their values.","properties":{"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared quote."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the quote: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchQuoteSharingSalesUnitRelationInput":{"description":"Field values of a QuoteSharingSalesUnitRelation record to create, or to update when its id is set.","properties":{"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared quote."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the quote: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"QuoteType":{"description":"Quote type that classifies quotes and defines their forms and the quote process they follow.","properties":{"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"form_edit_api":{"type":"object","description":"Typed, read-only view of a form layout of this type: form_edit_api mirrors the edit form (form_edit), form_lost_api the form shown when archiving as lost (form_lost)."},"can_change_readonly":{"type":"boolean","example":false,"description":"False for types whose read-only setting is fixed, such as the recurrent appointment type; true otherwise."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"quote_process":{"type":"string","format":"uri","description":"Quote process (pipeline) this quote type follows.\n\nRelated QuoteProcess record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'QuoteProcess' for its fields."},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing quotes of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost":{"type":"object","description":"JSON definition of the form shown when archiving (losing) a quote of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost_enabled":{"type":"boolean","example":false,"description":"True when the lost form is required on archiving quotes of this type."},"is_readonly":{"type":"boolean","example":false,"description":"True when the quote type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"quote_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote process that quotes of this type follow."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"form_lost_api":{"type":"object","description":"Typed, read-only view of a form layout of this type: form_edit_api mirrors the edit form (form_edit), form_lost_api the form shown when archiving as lost (form_lost)."}},"required":["has_draft","is_delete_protected","form_edit_api","id","quote_process","form_lost_enabled","is_readonly","name","quote_process_id","settings","form_lost_api"]},"createQuoteTypeInput":{"description":"Field values of a new QuoteType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing quotes of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost":{"type":"object","description":"JSON definition of the form shown when archiving (losing) a quote of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost_enabled":{"type":"boolean","example":false,"description":"True when the lost form is required on archiving quotes of this type."},"is_readonly":{"type":"boolean","example":false,"description":"True when the quote type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"quote_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote process that quotes of this type follow."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["form_lost_enabled","is_readonly","name","quote_process_id","settings"]},"updateQuoteTypeInput":{"description":"Field values to change on a QuoteType record; fields left out keep their values.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing quotes of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost":{"type":"object","description":"JSON definition of the form shown when archiving (losing) a quote of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost_enabled":{"type":"boolean","example":false,"description":"True when the lost form is required on archiving quotes of this type."},"is_readonly":{"type":"boolean","example":false,"description":"True when the quote type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"quote_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote process that quotes of this type follow."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchQuoteTypeInput":{"description":"Field values of a QuoteType record to create, or to update when its id is set.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing quotes of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost":{"type":"object","description":"JSON definition of the form shown when archiving (losing) a quote of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"form_lost_enabled":{"type":"boolean","example":false,"description":"True when the lost form is required on archiving quotes of this type."},"is_readonly":{"type":"boolean","example":false,"description":"True when the quote type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"quote_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote process that quotes of this type follow."},"settings":{"type":"string","format":"binary","example":"blob","description":"Per-type configuration for records of this entity type, e.g. allowed task and appointment types that may be linked to records of this type. This payload conforms to the `EntityTypeSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/EntityTypeSettings.json","description":"EntityTypeSettings JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Report":{"description":"Saved report or dashboard with its settings, sharing and delivery schedule.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User who owns the report or dashboard.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"reports_folder":{"type":"string","format":"uri","description":"Report folder this report is filed under (default folder when empty).\n\nRelated ReportFolder record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ReportFolder' for its fields."},"sync_entity":{"type":"string","format":"uri","description":"Specific record this report is synchronized to. Set only when sync_enabled is true.\n\nRelated Profile record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Profile' for its fields."},"access_link":{"type":"string","example":"string","description":"Public access token used in shareable report URLs. Empty when public sharing is not configured for the report."},"ai_conversation":{"type":"object","description":"AI assistant conversation associated with the report (e.g. records of AI-driven report generation)."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the report."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"reports_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent report folder."},"settings":{"type":"object","description":"Report definition (entity, columns, filters, charts, structure). Stored as a JSON document. This payload conforms to the `ReportSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ReportSettings.json","description":"ReportSettings JSON Schema"}},"share_mode":{"type":"integer","description":"Who besides the owner can access the report: nobody (Private, the default), the users and sales units in sharing_clients and sharing_units (Standard), or all users (AllView to view, AllEdit to also edit).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"share_mode_params":{"type":"string","example":1,"enum":[1,2],"description":"Legacy additional sharing options; kept with the record but no longer applied.","x-enumDescriptions":{"1":"Legacy option to share with the managers of the selected sales units; no longer applied.","2":"Legacy option to share with the included users; no longer applied."}},"sync_enabled":{"type":"boolean","example":false,"description":"When true, name and settings are kept in sync with the linked screen profile; when false, the report is detached from profile sync."},"sync_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the synchronized record."},"type":{"type":"integer","description":"Kind of report: a table or pivot report, a dashboard, an opportunity forecast, or an advanced report built from several linked tables.\n\nInteger enum value: 0 - TableReport, 1 - DashboardReport, 2 - ForecastReport, 3 - AdvancedReport","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Table or pivot report of records.","1":"Dashboard made of charts, tiles and other widgets.","2":"Opportunity forecast.","3":"Report built from several linked tables or pivots, edited in the advanced report editor."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"schedule":{"type":"string","format":"uri","description":"The calling user's scheduled email delivery of this report; empty when none is set. Set it with `setScheduleReport` and remove it with `removeScheduleReport`.\n\nRelated ReportSchedule record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ReportSchedule' for its fields."},"is_favorite":{"type":"boolean","example":false,"description":"True when the current user has marked this report as a favorite (see ClientFavorite)."},"sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related ReportSharingSalesUnitRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ReportSharingSalesUnitRelation' for its fields."},"description":"Sales units granted shared access to this report (custom share mode)."},"sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related ReportSharingClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ReportSharingClientRelation' for its fields."},"description":"Users granted shared access to this report (custom share mode)."}},"required":["is_delete_protected","id","owner","reports_folder","name","owner_id","reports_folder_id","settings","type","is_favorite"]},"ReportFolder":{"description":"Folder that organizes reports; folders can be nested.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"parent_report_folder":{"type":"string","format":"uri","description":"Parent report folder, when this folder is nested. Empty for top-level folders.\n\nRelated ReportFolder record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ReportFolder' for its fields."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"parent_report_folder_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent folder, or empty for top-level folders."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","name"]},"ReportSchedule":{"description":"Schedule that emails a report to its recipients at regular intervals.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User who owns the schedule. The schedule sends emails on behalf of this user.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"report":{"type":"string","format":"uri","description":"Report whose delivery is scheduled.\n\nRelated Report record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Report' for its fields."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"report_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the scheduled report."},"settings":{"type":"object","description":"Schedule configuration: cadence, timezone, recipients, email body and report attachment options. Stored as a JSON document. This payload conforms to the `ReportScheduleSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ReportScheduleSchema.json","description":"ReportScheduleSchema JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Files attached to scheduled emails sent for this report."},"sender_email":{"type":"string","example":"string","description":"Email address used to send the scheduled report (company email when configured, otherwise the owner's personal email)."},"report_name":{"type":"string","example":"string","description":"Name of the scheduled report (mirror of the linked Report.name)."},"report_owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who owns the scheduled report."},"report_type":{"type":"integer","description":"Kind of the scheduled report (e.g. TableReport, AdvancedReport, DashboardReport).\n\nInteger enum value: 0 - TableReport, 1 - DashboardReport, 2 - ForecastReport, 3 - AdvancedReport","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Table or pivot report of records.","1":"Dashboard made of charts, tiles and other widgets.","2":"Opportunity forecast.","3":"Report built from several linked tables or pivots, edited in the advanced report editor."}}},"required":["is_delete_protected","id","owner","report","owner_id","report_id","settings","report_name","report_owner_id","report_type"]},"createReportScheduleInput":{"description":"Field values of a new ReportSchedule record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"report_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the scheduled report."},"settings":{"type":"object","description":"Schedule configuration: cadence, timezone, recipients, email body and report attachment options. Stored as a JSON document. This payload conforms to the `ReportScheduleSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ReportScheduleSchema.json","description":"ReportScheduleSchema JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Files attached to scheduled emails sent for this report."}},"required":["owner_id","report_id","settings"]},"updateReportScheduleInput":{"description":"Field values to change on a ReportSchedule record; fields left out keep their values.","properties":{"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"report_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the scheduled report."},"settings":{"type":"object","description":"Schedule configuration: cadence, timezone, recipients, email body and report attachment options. Stored as a JSON document. This payload conforms to the `ReportScheduleSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ReportScheduleSchema.json","description":"ReportScheduleSchema JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Files attached to scheduled emails sent for this report."}}},"batchReportScheduleInput":{"description":"Field values of a ReportSchedule record to create, or to update when its id is set.","properties":{"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"report_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the scheduled report."},"settings":{"type":"object","description":"Schedule configuration: cadence, timezone, recipients, email body and report attachment options. Stored as a JSON document. This payload conforms to the `ReportScheduleSchema` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/ReportScheduleSchema.json","description":"ReportScheduleSchema JSON Schema"}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Files attached to scheduled emails sent for this report."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"ReportSharingClientRelation":{"description":"Share of a report with an individual user, with the access level granted.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User granted shared access to the report.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"report":{"type":"string","format":"uri","description":"Report being shared.\n\nRelated Report record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Report' for its fields."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"report_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared report."},"role":{"type":"integer","description":"Access the sharing gives the user on the report: Watcher can view it, Editor can also edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","client","report","client_id","report_id"]},"ReportSharingSalesUnitRelation":{"description":"Share of a report with a sales unit, with the access level granted.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"report":{"type":"string","format":"uri","description":"Report being shared.\n\nRelated Report record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Report' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit granted shared access to the report.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"report_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared report."},"role":{"type":"integer","description":"Access the sharing gives members and managers of the sales unit on the report: Watcher can view it, Editor can also edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","report","unit","report_id","unit_id"]},"SalesRole":{"description":"Role a contact plays in a deal (e.g. decision maker), assigned to contacts on leads and opportunities.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color_code":{"type":"integer","format":"int32","example":1,"description":"Display color of the sales role, encoded as a 24-bit RGB integer: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","color_code","name"]},"createSalesRoleInput":{"description":"Field values of a new SalesRole record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"color_code":{"type":"integer","format":"int32","example":1,"description":"Display color of the sales role, encoded as a 24-bit RGB integer: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["color_code","name"]},"updateSalesRoleInput":{"description":"Field values to change on a SalesRole record; fields left out keep their values.","properties":{"color_code":{"type":"integer","format":"int32","example":1,"description":"Display color of the sales role, encoded as a 24-bit RGB integer: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchSalesRoleInput":{"description":"Field values of a SalesRole record to create, or to update when its id is set.","properties":{"color_code":{"type":"integer","format":"int32","example":1,"description":"Display color of the sales role, encoded as a 24-bit RGB integer: (red << 16) | (green << 8) | blue."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"SalesUnit":{"description":"Sales unit (team) in the organization hierarchy that users belong to.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"parent":{"type":"string","format":"uri","description":"Parent sales unit, when this unit is nested. Empty for the root unit.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"picture":{"type":"string","format":"uri","description":"Profile picture (logo) of the sales unit.\n\nRelated CloudObject record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObject' for its fields."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"parent_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent unit, or empty for the root unit."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the picture cloud object."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","name"]},"createSalesUnitInput":{"description":"Field values of a new SalesUnit record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"picture":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Profile picture (logo) of the sales unit.\n\nRelated CloudObject record; see 'createCloudObjectInput' for its fields."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"parent_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent unit, or empty for the root unit."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the picture cloud object."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["name"]},"updateSalesUnitInput":{"description":"Field values to change on a SalesUnit record; fields left out keep their values.","properties":{"picture":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Profile picture (logo) of the sales unit.\n\nRelated CloudObject record; see 'updateCloudObjectInput' for its fields."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"parent_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent unit, or empty for the root unit."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the picture cloud object."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchSalesUnitInput":{"description":"Field values of a SalesUnit record to create, or to update when its id is set.","properties":{"picture":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObject record."}},"description":"Profile picture (logo) of the sales unit.\n\nRelated CloudObject record; see 'updateCloudObjectInput' for its fields."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"parent_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent unit, or empty for the root unit."},"picture_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the picture cloud object."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"SalesUnitClientRelation":{"description":"Membership of a user in a sales unit, as a member or manager.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User belonging to the sales unit.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the user belongs to.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"unit_role":{"type":"integer","description":"Role of the user in the sales unit: Member, or Manager, which also covers all subunits of the unit.\n\nInteger enum value: 1 - Member, 2 - Manager","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Regular member of the sales unit.","2":"Manager of the sales unit."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","client","unit","client_id","unit_id"]},"Solution":{"description":"Canvas that groups related automation tools (Automatizer processes, email sequences, online forms) and tracks their status and activity.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User who owns the solution.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"solution_template":{"type":"string","format":"uri","description":"Template this solution was created from, if any.\n\nRelated SolutionTemplate record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SolutionTemplate' for its fields."},"description":{"type":"string","example":"string","description":"Free-text description of the solution."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Canvas of the solution as a JSON object conforming to the SolutionSchema type, with nodes, edges and groups. Validated on write; an invalid canvas is rejected. Full structure: https://developers.coevera.com/reference/graphql/types/s/#SolutionSchema"},"solution_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Template this solution was created from, if any."},"node_count":{"type":"integer","format":"int32","example":1,"description":"Number of nodes on the canvas."},"status":{"type":"integer","description":"Live status derived from the activatable nodes (Automatizer, Email Sequence, Online Form): Active when all are enabled, Inactive when none are, Partial otherwise.\n\nInteger enum value: 1 - Active, 2 - Partial, 3 - Inactive","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"All of them are enabled.","2":"Some of them are enabled.","3":"None of them is enabled."}},"tags":{"type":"array","items":{"type":"string","format":"uri","description":"Related TagRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TagRelation' for its fields."},"description":"Tags attached to the solution for organisation/filtering."}},"required":["is_delete_protected","id","owner","name","owner_id"]},"createSolutionInput":{"description":"Field values of a new Solution record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"description":{"type":"string","example":"string","description":"Free-text description of the solution."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Canvas of the solution as a JSON object conforming to the SolutionSchema type, with nodes, edges and groups. Validated on write; an invalid canvas is rejected. Full structure: https://developers.coevera.com/reference/graphql/types/s/#SolutionSchema"},"solution_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Template this solution was created from, if any."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'createTagRelationInput' for its fields."},"description":"Tags attached to the solution for organisation/filtering."}},"required":["name","owner_id"]},"updateSolutionInput":{"description":"Field values to change on a Solution record; fields left out keep their values.","properties":{"description":{"type":"string","example":"string","description":"Free-text description of the solution."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Canvas of the solution as a JSON object conforming to the SolutionSchema type, with nodes, edges and groups. Validated on write; an invalid canvas is rejected. Full structure: https://developers.coevera.com/reference/graphql/types/s/#SolutionSchema"},"solution_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Template this solution was created from, if any."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tags attached to the solution for organisation/filtering."}}},"batchSolutionInput":{"description":"Field values of a Solution record to create, or to update when its id is set.","properties":{"description":{"type":"string","example":"string","description":"Free-text description of the solution."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"settings":{"type":"object","description":"Canvas of the solution as a JSON object conforming to the SolutionSchema type, with nodes, edges and groups. Validated on write; an invalid canvas is rejected. Full structure: https://developers.coevera.com/reference/graphql/types/s/#SolutionSchema"},"solution_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Template this solution was created from, if any."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tags attached to the solution for organisation/filtering."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"SolutionTemplate":{"description":"Ready-made solution offered in the template gallery as a starting point for new solutions.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"description":{"type":"string","example":"string","description":"Free-text description of what the template sets up."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"preview_image_url":{"type":"string","example":"string","description":"URL of the template preview image shown in the template gallery."},"settings":{"type":"object","description":"Full template definition: the blueprint canvas (placeholder record ids), per-node creation blueprints and admin prerequisites. Instantiated into real records on create-from-template; clients only ever read the derived SolutionTemplateSchema projection. Full structure: https://developers.coevera.com/reference/graphql/types/s/#SolutionTemplateSchema"}},"required":["is_delete_protected","id","name","settings"]},"createSolutionTemplateInput":{"description":"Field values of a new SolutionTemplate record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"description":{"type":"string","example":"string","description":"Free-text description of what the template sets up."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"preview_image_url":{"type":"string","example":"string","description":"URL of the template preview image shown in the template gallery."},"settings":{"type":"object","description":"Full template definition: the blueprint canvas (placeholder record ids), per-node creation blueprints and admin prerequisites. Instantiated into real records on create-from-template; clients only ever read the derived SolutionTemplateSchema projection. Full structure: https://developers.coevera.com/reference/graphql/types/s/#SolutionTemplateSchema"}},"required":["name","settings"]},"updateSolutionTemplateInput":{"description":"Field values to change on a SolutionTemplate record; fields left out keep their values.","properties":{"description":{"type":"string","example":"string","description":"Free-text description of what the template sets up."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"preview_image_url":{"type":"string","example":"string","description":"URL of the template preview image shown in the template gallery."},"settings":{"type":"object","description":"Full template definition: the blueprint canvas (placeholder record ids), per-node creation blueprints and admin prerequisites. Instantiated into real records on create-from-template; clients only ever read the derived SolutionTemplateSchema projection. Full structure: https://developers.coevera.com/reference/graphql/types/s/#SolutionTemplateSchema"}}},"batchSolutionTemplateInput":{"description":"Field values of a SolutionTemplate record to create, or to update when its id is set.","properties":{"description":{"type":"string","example":"string","description":"Free-text description of what the template sets up."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"preview_image_url":{"type":"string","example":"string","description":"URL of the template preview image shown in the template gallery."},"settings":{"type":"object","description":"Full template definition: the blueprint canvas (placeholder record ids), per-node creation blueprints and admin prerequisites. Instantiated into real records on create-from-template; clients only ever read the derived SolutionTemplateSchema projection. Full structure: https://developers.coevera.com/reference/graphql/types/s/#SolutionTemplateSchema"},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Step":{"description":"Step of an opportunity pipeline, lead process or quote process that records move through.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"lead_process":{"type":"string","format":"uri","description":"Lead process this step belongs to. Set when the step is part of a lead process.\n\nRelated LeadProcess record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadProcess' for its fields."},"pipeline":{"type":"string","format":"uri","description":"Opportunity pipeline this step belongs to. Set when the step is part of an opportunity pipeline.\n\nRelated Pipeline record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Pipeline' for its fields.","readOnly":true},"quote_process":{"type":"string","format":"uri","description":"Quote process this step belongs to. Set when the step is part of a quote process.\n\nRelated QuoteProcess record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'QuoteProcess' for its fields."},"description":{"type":"string","example":"string","description":"Free-text description shown in the step UI."},"has_readonly_form":{"type":"boolean","example":false,"description":"When true, the record form is read-only while a record is in this step."},"has_version_increment":{"type":"boolean","example":false,"description":"When true, transitioning a record into this step bumps its version counter."},"lead_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead process this step belongs to, or empty when the step is not part of a lead process."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"percent":{"type":"integer","format":"int32","example":1,"description":"Probability percent associated with the step (0-100). Required for opportunity pipeline steps; null for lead/quote process steps."},"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity pipeline.","readOnly":true},"quote_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote process this step belongs to, or empty when the step is not part of a quote process."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the step within its pipeline or process; lower values appear first."},"timeframe":{"type":"integer","format":"int32","example":1,"description":"Expected number of days a record should spend in this step. Used to flag overdue records."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectStepRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectStepRelation' for its fields."},"description":"Files attached to the step (e.g. step-specific documentation or templates)."},"step_checklists":{"type":"array","items":{"type":"string","format":"uri","description":"Related StepChecklist record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'StepChecklist' for its fields."},"description":"Checklist items the user must complete before moving a record out of this step."}},"required":["is_delete_protected","id","name"]},"createStepInput":{"description":"Field values of a new Step record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"description":{"type":"string","example":"string","description":"Free-text description shown in the step UI."},"has_readonly_form":{"type":"boolean","example":false,"description":"When true, the record form is read-only while a record is in this step."},"has_version_increment":{"type":"boolean","example":false,"description":"When true, transitioning a record into this step bumps its version counter."},"lead_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead process this step belongs to, or empty when the step is not part of a lead process."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"percent":{"type":"integer","format":"int32","example":1,"description":"Probability percent associated with the step (0-100). Required for opportunity pipeline steps; null for lead/quote process steps."},"pipeline_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity pipeline.","readOnly":true},"quote_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote process this step belongs to, or empty when the step is not part of a quote process."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the step within its pipeline or process; lower values appear first."},"timeframe":{"type":"integer","format":"int32","example":1,"description":"Expected number of days a record should spend in this step. Used to flag overdue records."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectStepRelation record."}},"description":"Related CloudObjectStepRelation record; see 'createCloudObjectStepRelationInput' for its fields."},"description":"Files attached to the step (e.g. step-specific documentation or templates)."},"step_checklists":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related StepChecklist record."}},"description":"Related StepChecklist record; see 'createStepChecklistInput' for its fields."},"description":"Checklist items the user must complete before moving a record out of this step."}},"required":["name"]},"updateStepInput":{"description":"Field values to change on a Step record; fields left out keep their values.","properties":{"description":{"type":"string","example":"string","description":"Free-text description shown in the step UI."},"has_readonly_form":{"type":"boolean","example":false,"description":"When true, the record form is read-only while a record is in this step."},"has_version_increment":{"type":"boolean","example":false,"description":"When true, transitioning a record into this step bumps its version counter."},"lead_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead process this step belongs to, or empty when the step is not part of a lead process."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"percent":{"type":"integer","format":"int32","example":1,"description":"Probability percent associated with the step (0-100). Required for opportunity pipeline steps; null for lead/quote process steps."},"quote_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote process this step belongs to, or empty when the step is not part of a quote process."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the step within its pipeline or process; lower values appear first."},"timeframe":{"type":"integer","format":"int32","example":1,"description":"Expected number of days a record should spend in this step. Used to flag overdue records."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectStepRelation record."}},"description":"Related CloudObjectStepRelation record; see 'updateCloudObjectStepRelationInput' for its fields."},"description":"Files attached to the step (e.g. step-specific documentation or templates)."},"step_checklists":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related StepChecklist record."}},"description":"Related StepChecklist record; see 'updateStepChecklistInput' for its fields."},"description":"Checklist items the user must complete before moving a record out of this step."}}},"batchStepInput":{"description":"Field values of a Step record to create, or to update when its id is set.","properties":{"description":{"type":"string","example":"string","description":"Free-text description shown in the step UI."},"has_readonly_form":{"type":"boolean","example":false,"description":"When true, the record form is read-only while a record is in this step."},"has_version_increment":{"type":"boolean","example":false,"description":"When true, transitioning a record into this step bumps its version counter."},"lead_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead process this step belongs to, or empty when the step is not part of a lead process."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"percent":{"type":"integer","format":"int32","example":1,"description":"Probability percent associated with the step (0-100). Required for opportunity pipeline steps; null for lead/quote process steps."},"quote_process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the quote process this step belongs to, or empty when the step is not part of a quote process."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the step within its pipeline or process; lower values appear first."},"timeframe":{"type":"integer","format":"int32","example":1,"description":"Expected number of days a record should spend in this step. Used to flag overdue records."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectStepRelation record."}},"description":"Related CloudObjectStepRelation record; see 'updateCloudObjectStepRelationInput' for its fields."},"description":"Files attached to the step (e.g. step-specific documentation or templates)."},"step_checklists":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related StepChecklist record."}},"description":"Related StepChecklist record; see 'updateStepChecklistInput' for its fields."},"description":"Checklist items the user must complete before moving a record out of this step."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"StepChecklist":{"description":"Checklist item of a pipeline step, such as logging an activity, filling a field or attaching a document.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"appointment_type":{"type":"string","format":"uri","description":"Appointment type that satisfies this checklist item. Set when activity_type_id resolves to an AppointmentType.\n\nRelated AppointmentType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AppointmentType' for its fields."},"task_type":{"type":"string","format":"uri","description":"Task type that satisfies this checklist item. Set when activity_type_id resolves to a TaskType.\n\nRelated TaskType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TaskType' for its fields."},"cloud_object_template":{"type":"string","format":"uri","description":"Document template the checklist item fills and attaches to the record. Set when item_type is UseDocumentTemplate.\n\nRelated CloudObjectTemplate record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectTemplate' for its fields."},"email_sequence":{"type":"string","format":"uri","description":"Email sequence the item should enroll the record into.\n\nRelated EmailSequence record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailSequence' for its fields."},"field":{"type":"string","format":"uri","description":"Field whose value satisfies this checklist item. Set when item_type is FieldType.\n\nRelated Field record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Field' for its fields."},"process":{"type":"string","format":"uri","description":"Automatizer process that completes the item once it has run for the record. Set when item_type is RunProcess.\n\nRelated Process record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Process' for its fields."},"send_email_field":{"type":"string","format":"uri","description":"Field that supplies the recipient email address when the checklist item triggers sending an email.\n\nRelated Field record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Field' for its fields."},"send_email_lookup_field":{"type":"string","format":"uri","description":"Contact or Account lookup field whose primary record supplies the recipient. When set, send_email_field is read from that record instead of the Primary Contact or Primary Account. Only lookup fields with a primary record are valid.\n\nRelated Field record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Field' for its fields."},"send_email_template":{"type":"string","format":"uri","description":"Email template the email is pre-filled with when the item is completed by sending an email. Set when item_type is SendEmail.\n\nRelated EmailTemplate record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'EmailTemplate' for its fields."},"step":{"type":"string","format":"uri","description":"Pipeline or process step this checklist item belongs to.\n\nRelated Step record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Step' for its fields."},"activity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task type that satisfies the checklist item, or empty when the item is not activity-based."},"cloud_object_format":{"type":"integer","description":"File format of the document generated from cloud_object_template when item_type is UseDocumentTemplate: the template's own format or PDF.\n\nInteger enum value: 0 - Default, 1 - Pdf","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The document template's own format.","1":"PDF."}},"cloud_object_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the document template the checklist item fills and attaches to the record. Set when item_type is UseDocumentTemplate."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the checklist item."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence the record must be enrolled in to complete the item. Set when item_type is EnrollToEmailSequence."},"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the related field."},"item_type":{"type":"integer","description":"Kind of checklist item, which determines what completes it, such as checking it off, filling in field, logging an activity of activity_type_id or running process.\n\nInteger enum value: 1 - Default, 2 - ActivityType, 3 - FieldType, 4 - CreateNote, 5 - AttachDocument, 6 - SendEmail, 7 - UseDocumentTemplate, 8 - EnrollToEmailSequence, 9 - RunProcess, 10 - MapSalesRole, 11 - CreateInfluenceMap","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11],"x-enumDescriptions":{"1":"Plain item, completed when a user checks it off.","2":"Completed through an activity of the selected task or appointment type.","3":"Completed when the selected field on the record has a value.","4":"Completed when a note is created for the item.","5":"Completed when a document is attached for the item.","6":"Completed when an email is sent for the item.","7":"Completed when a document is generated from the selected document template.","8":"Completed when the record is enrolled in the selected email sequence.","9":"Completed when the selected Automatizer process has run for the record.","10":"Completed when contacts with all the selected sales roles are linked to the lead or opportunity.","11":"Item for building the influence map, completed when a user checks it off."}},"item_validation":{"type":"integer","description":"Condition the item must meet before the record can move past the step; empty when the item is optional. RelatedActivityCompleted is allowed only when item_type is ActivityType.\n\nInteger enum value: 1 - Required, 2 - RelatedActivityCompleted, 3 - RelatedActivityLinked","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The item must be completed, for example checked off or its field filled in.","2":"The activity linked to the item must be completed (task completed or appointment ended); allowed only for activity items.","3":"An activity must be linked to the item."}},"label":{"type":"string","example":"string","description":"Display label of the checklist item."},"label_use_lang":{"type":"boolean","example":false,"description":"When true, label is treated as a translation key and localized in the UI; otherwise the literal text is shown."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the related process."},"send_email_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the recipient field."},"send_email_lookup_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the Contact or Account lookup field whose primary record supplies the recipient; empty when the recipient comes from the Primary Contact or Primary Account."},"send_email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template the email is pre-filled with when the item is completed by sending an email. Set when item_type is SendEmail; empty when no template is preset."},"sort_order":{"type":"integer","format":"int32","example":1,"description":"Position of the checklist item within its step; lower values appear first.","readOnly":true},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline or process step this checklist item belongs to."},"visibility_condition":{"type":"string","format":"binary","example":"blob","description":"Filter expression that controls when the checklist item is shown. The item is visible only when the record matches this filter; defaults to a no-op filter matching all records. This payload conforms to the `StepChecklistVisibilityFilter` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/StepChecklistVisibilityFilter.json","description":"StepChecklistVisibilityFilter JSON Schema"}},"visibility_type":{"type":"integer","description":"Whether the item is always shown on the record or only when the record matches visibility_condition.\n\nInteger enum value: 0 - Always, 1 - Condition","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The item is always shown.","1":"The item is shown only when the record matches visibilityCondition."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sales_roles":{"type":"array","items":{"type":"string","format":"uri","description":"Related StepChecklistSalesRoleRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'StepChecklistSalesRoleRelation' for its fields."},"description":"Sales roles the checklist item is shown to. Empty means the item is shown to all roles."}},"required":["is_delete_protected","id","step","sort_order","step_id","visibility_condition"]},"createStepChecklistInput":{"description":"Field values of a new StepChecklist record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"cloud_object_template":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectTemplate record."}},"description":"Document template the checklist item fills and attaches to the record. Set when item_type is UseDocumentTemplate.\n\nRelated CloudObjectTemplate record; see 'createCloudObjectTemplateInput' for its fields."},"activity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task type that satisfies the checklist item, or empty when the item is not activity-based."},"cloud_object_format":{"type":"integer","description":"File format of the document generated from cloud_object_template when item_type is UseDocumentTemplate: the template's own format or PDF.\n\nInteger enum value: 0 - Default, 1 - Pdf","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The document template's own format.","1":"PDF."}},"cloud_object_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the document template the checklist item fills and attaches to the record. Set when item_type is UseDocumentTemplate."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the checklist item."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence the record must be enrolled in to complete the item. Set when item_type is EnrollToEmailSequence."},"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the related field."},"item_type":{"type":"integer","description":"Kind of checklist item, which determines what completes it, such as checking it off, filling in field, logging an activity of activity_type_id or running process.\n\nInteger enum value: 1 - Default, 2 - ActivityType, 3 - FieldType, 4 - CreateNote, 5 - AttachDocument, 6 - SendEmail, 7 - UseDocumentTemplate, 8 - EnrollToEmailSequence, 9 - RunProcess, 10 - MapSalesRole, 11 - CreateInfluenceMap","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11],"x-enumDescriptions":{"1":"Plain item, completed when a user checks it off.","2":"Completed through an activity of the selected task or appointment type.","3":"Completed when the selected field on the record has a value.","4":"Completed when a note is created for the item.","5":"Completed when a document is attached for the item.","6":"Completed when an email is sent for the item.","7":"Completed when a document is generated from the selected document template.","8":"Completed when the record is enrolled in the selected email sequence.","9":"Completed when the selected Automatizer process has run for the record.","10":"Completed when contacts with all the selected sales roles are linked to the lead or opportunity.","11":"Item for building the influence map, completed when a user checks it off."}},"item_validation":{"type":"integer","description":"Condition the item must meet before the record can move past the step; empty when the item is optional. RelatedActivityCompleted is allowed only when item_type is ActivityType.\n\nInteger enum value: 1 - Required, 2 - RelatedActivityCompleted, 3 - RelatedActivityLinked","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The item must be completed, for example checked off or its field filled in.","2":"The activity linked to the item must be completed (task completed or appointment ended); allowed only for activity items.","3":"An activity must be linked to the item."}},"label":{"type":"string","example":"string","description":"Display label of the checklist item."},"label_use_lang":{"type":"boolean","example":false,"description":"When true, label is treated as a translation key and localized in the UI; otherwise the literal text is shown."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the related process."},"send_email_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the recipient field."},"send_email_lookup_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the Contact or Account lookup field whose primary record supplies the recipient; empty when the recipient comes from the Primary Contact or Primary Account."},"send_email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template the email is pre-filled with when the item is completed by sending an email. Set when item_type is SendEmail; empty when no template is preset."},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline or process step this checklist item belongs to."},"visibility_condition":{"type":"string","format":"binary","example":"blob","description":"Filter expression that controls when the checklist item is shown. The item is visible only when the record matches this filter; defaults to a no-op filter matching all records. This payload conforms to the `StepChecklistVisibilityFilter` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/StepChecklistVisibilityFilter.json","description":"StepChecklistVisibilityFilter JSON Schema"}},"visibility_type":{"type":"integer","description":"Whether the item is always shown on the record or only when the record matches visibility_condition.\n\nInteger enum value: 0 - Always, 1 - Condition","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The item is always shown.","1":"The item is shown only when the record matches visibilityCondition."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sales_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related StepChecklistSalesRoleRelation record."}},"description":"Related StepChecklistSalesRoleRelation record; see 'createStepChecklistSalesRoleRelationInput' for its fields."},"description":"Sales roles the checklist item is shown to. Empty means the item is shown to all roles."}},"required":["step_id","visibility_condition"]},"updateStepChecklistInput":{"description":"Field values to change on a StepChecklist record; fields left out keep their values.","properties":{"cloud_object_template":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectTemplate record."}},"description":"Document template the checklist item fills and attaches to the record. Set when item_type is UseDocumentTemplate.\n\nRelated CloudObjectTemplate record; see 'updateCloudObjectTemplateInput' for its fields."},"activity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task type that satisfies the checklist item, or empty when the item is not activity-based."},"cloud_object_format":{"type":"integer","description":"File format of the document generated from cloud_object_template when item_type is UseDocumentTemplate: the template's own format or PDF.\n\nInteger enum value: 0 - Default, 1 - Pdf","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The document template's own format.","1":"PDF."}},"cloud_object_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the document template the checklist item fills and attaches to the record. Set when item_type is UseDocumentTemplate."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the checklist item."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence the record must be enrolled in to complete the item. Set when item_type is EnrollToEmailSequence."},"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the related field."},"item_type":{"type":"integer","description":"Kind of checklist item, which determines what completes it, such as checking it off, filling in field, logging an activity of activity_type_id or running process.\n\nInteger enum value: 1 - Default, 2 - ActivityType, 3 - FieldType, 4 - CreateNote, 5 - AttachDocument, 6 - SendEmail, 7 - UseDocumentTemplate, 8 - EnrollToEmailSequence, 9 - RunProcess, 10 - MapSalesRole, 11 - CreateInfluenceMap","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11],"x-enumDescriptions":{"1":"Plain item, completed when a user checks it off.","2":"Completed through an activity of the selected task or appointment type.","3":"Completed when the selected field on the record has a value.","4":"Completed when a note is created for the item.","5":"Completed when a document is attached for the item.","6":"Completed when an email is sent for the item.","7":"Completed when a document is generated from the selected document template.","8":"Completed when the record is enrolled in the selected email sequence.","9":"Completed when the selected Automatizer process has run for the record.","10":"Completed when contacts with all the selected sales roles are linked to the lead or opportunity.","11":"Item for building the influence map, completed when a user checks it off."}},"item_validation":{"type":"integer","description":"Condition the item must meet before the record can move past the step; empty when the item is optional. RelatedActivityCompleted is allowed only when item_type is ActivityType.\n\nInteger enum value: 1 - Required, 2 - RelatedActivityCompleted, 3 - RelatedActivityLinked","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The item must be completed, for example checked off or its field filled in.","2":"The activity linked to the item must be completed (task completed or appointment ended); allowed only for activity items.","3":"An activity must be linked to the item."}},"label":{"type":"string","example":"string","description":"Display label of the checklist item."},"label_use_lang":{"type":"boolean","example":false,"description":"When true, label is treated as a translation key and localized in the UI; otherwise the literal text is shown."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the related process."},"send_email_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the recipient field."},"send_email_lookup_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the Contact or Account lookup field whose primary record supplies the recipient; empty when the recipient comes from the Primary Contact or Primary Account."},"send_email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template the email is pre-filled with when the item is completed by sending an email. Set when item_type is SendEmail; empty when no template is preset."},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline or process step this checklist item belongs to."},"visibility_condition":{"type":"string","format":"binary","example":"blob","description":"Filter expression that controls when the checklist item is shown. The item is visible only when the record matches this filter; defaults to a no-op filter matching all records. This payload conforms to the `StepChecklistVisibilityFilter` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/StepChecklistVisibilityFilter.json","description":"StepChecklistVisibilityFilter JSON Schema"}},"visibility_type":{"type":"integer","description":"Whether the item is always shown on the record or only when the record matches visibility_condition.\n\nInteger enum value: 0 - Always, 1 - Condition","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The item is always shown.","1":"The item is shown only when the record matches visibilityCondition."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sales_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related StepChecklistSalesRoleRelation record."}},"description":"Related StepChecklistSalesRoleRelation record; see 'updateStepChecklistSalesRoleRelationInput' for its fields."},"description":"Sales roles the checklist item is shown to. Empty means the item is shown to all roles."}}},"batchStepChecklistInput":{"description":"Field values of a StepChecklist record to create, or to update when its id is set.","properties":{"cloud_object_template":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectTemplate record."}},"description":"Document template the checklist item fills and attaches to the record. Set when item_type is UseDocumentTemplate.\n\nRelated CloudObjectTemplate record; see 'updateCloudObjectTemplateInput' for its fields."},"activity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment or task type that satisfies the checklist item, or empty when the item is not activity-based."},"cloud_object_format":{"type":"integer","description":"File format of the document generated from cloud_object_template when item_type is UseDocumentTemplate: the template's own format or PDF.\n\nInteger enum value: 0 - Default, 1 - Pdf","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The document template's own format.","1":"PDF."}},"cloud_object_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the document template the checklist item fills and attaches to the record. Set when item_type is UseDocumentTemplate."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the checklist item."},"email_sequence_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email sequence the record must be enrolled in to complete the item. Set when item_type is EnrollToEmailSequence."},"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the related field."},"item_type":{"type":"integer","description":"Kind of checklist item, which determines what completes it, such as checking it off, filling in field, logging an activity of activity_type_id or running process.\n\nInteger enum value: 1 - Default, 2 - ActivityType, 3 - FieldType, 4 - CreateNote, 5 - AttachDocument, 6 - SendEmail, 7 - UseDocumentTemplate, 8 - EnrollToEmailSequence, 9 - RunProcess, 10 - MapSalesRole, 11 - CreateInfluenceMap","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11],"x-enumDescriptions":{"1":"Plain item, completed when a user checks it off.","2":"Completed through an activity of the selected task or appointment type.","3":"Completed when the selected field on the record has a value.","4":"Completed when a note is created for the item.","5":"Completed when a document is attached for the item.","6":"Completed when an email is sent for the item.","7":"Completed when a document is generated from the selected document template.","8":"Completed when the record is enrolled in the selected email sequence.","9":"Completed when the selected Automatizer process has run for the record.","10":"Completed when contacts with all the selected sales roles are linked to the lead or opportunity.","11":"Item for building the influence map, completed when a user checks it off."}},"item_validation":{"type":"integer","description":"Condition the item must meet before the record can move past the step; empty when the item is optional. RelatedActivityCompleted is allowed only when item_type is ActivityType.\n\nInteger enum value: 1 - Required, 2 - RelatedActivityCompleted, 3 - RelatedActivityLinked","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"The item must be completed, for example checked off or its field filled in.","2":"The activity linked to the item must be completed (task completed or appointment ended); allowed only for activity items.","3":"An activity must be linked to the item."}},"label":{"type":"string","example":"string","description":"Display label of the checklist item."},"label_use_lang":{"type":"boolean","example":false,"description":"When true, label is treated as a translation key and localized in the UI; otherwise the literal text is shown."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the related process."},"send_email_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the recipient field."},"send_email_lookup_field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the Contact or Account lookup field whose primary record supplies the recipient; empty when the recipient comes from the Primary Contact or Primary Account."},"send_email_template_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the email template the email is pre-filled with when the item is completed by sending an email. Set when item_type is SendEmail; empty when no template is preset."},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline or process step this checklist item belongs to."},"visibility_condition":{"type":"string","format":"binary","example":"blob","description":"Filter expression that controls when the checklist item is shown. The item is visible only when the record matches this filter; defaults to a no-op filter matching all records. This payload conforms to the `StepChecklistVisibilityFilter` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/StepChecklistVisibilityFilter.json","description":"StepChecklistVisibilityFilter JSON Schema"}},"visibility_type":{"type":"integer","description":"Whether the item is always shown on the record or only when the record matches visibility_condition.\n\nInteger enum value: 0 - Always, 1 - Condition","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The item is always shown.","1":"The item is shown only when the record matches visibilityCondition."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sales_roles":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related StepChecklistSalesRoleRelation record."}},"description":"Related StepChecklistSalesRoleRelation record; see 'updateStepChecklistSalesRoleRelationInput' for its fields."},"description":"Sales roles the checklist item is shown to. Empty means the item is shown to all roles."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"StepChecklistSalesRoleRelation":{"description":"Sales role that a step checklist item is shown to.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"sales_role":{"type":"string","format":"uri","description":"Sales role that sees the checklist item.\n\nRelated SalesRole record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesRole' for its fields."},"step_checklist":{"type":"string","format":"uri","description":"Checklist item the role is granted access to.\n\nRelated StepChecklist record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'StepChecklist' for its fields."},"sales_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales role that sees the checklist item."},"step_checklist_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the checklist item."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","sales_role","step_checklist","sales_role_id","step_checklist_id"]},"createStepChecklistSalesRoleRelationInput":{"description":"Field values of a new StepChecklistSalesRoleRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"sales_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales role that sees the checklist item."},"step_checklist_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the checklist item."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["sales_role_id","step_checklist_id"]},"updateStepChecklistSalesRoleRelationInput":{"description":"Field values to change on a StepChecklistSalesRoleRelation record; fields left out keep their values.","properties":{"sales_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales role that sees the checklist item."},"step_checklist_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the checklist item."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchStepChecklistSalesRoleRelationInput":{"description":"Field values of a StepChecklistSalesRoleRelation record to create, or to update when its id is set.","properties":{"sales_role_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales role that sees the checklist item."},"step_checklist_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the checklist item."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Tag":{"description":"Label that users attach to records such as accounts, contacts or opportunities to categorize them.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"creator":{"type":"string","format":"uri","description":"User who created the tag.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"allowed_entity_type_ids":{"type":"object","description":"For tags scoped to specific record types (e.g. specific Account types), the list of type ids the tag can be assigned to. Empty/null means no per-type restriction."},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the tag, encoded as a 24-bit RGB integer: (red << 16) | (green << 8) | blue."},"creator_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the creating user."},"entity_api_name":{"type":"string","example":"string","description":"For tags scoped to custom entities, the api name of the custom entity the tag belongs to. Required for custom-entity tags and must be empty for all other tags."},"is_enabled":{"type":"boolean","example":false,"description":"When false, the tag is hidden in pickers and cannot be assigned to new records."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"supported_entities":{"type":"string","example":1,"enum":[1,2,4,8,16,32,64,128,256,512,1024,2048],"description":"Bit flags of the entities the tag can be attached to, added together: Contact 1, Account 2, Opportunity 4, Lead 8, Project 16, Email 32, Process 64, Appointment 128, Task 256, Quote 512, CustomEntity 1024, Solution 2048.","x-enumDescriptions":{"1":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","8":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","16":"Project delivered for an account or run internally, with its objectives, activities and progress.","32":"Email message sent or received by users of the space, linked to the contacts, accounts and other records it concerns.","64":"Automation processes.","128":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","256":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","512":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","1024":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","2048":"Canvas that groups related automation tools (Automatizer processes, email sequences, online forms) and tracks their status and activity."}},"use_lang":{"type":"boolean","example":false,"description":"When true, the tag name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","color","name"]},"createTagInput":{"description":"Field values of a new Tag record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"allowed_entity_type_ids":{"type":"object","description":"For tags scoped to specific record types (e.g. specific Account types), the list of type ids the tag can be assigned to. Empty/null means no per-type restriction."},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the tag, encoded as a 24-bit RGB integer: (red << 16) | (green << 8) | blue."},"creator_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the creating user."},"entity_api_name":{"type":"string","example":"string","description":"For tags scoped to custom entities, the api name of the custom entity the tag belongs to. Required for custom-entity tags and must be empty for all other tags."},"is_enabled":{"type":"boolean","example":false,"description":"When false, the tag is hidden in pickers and cannot be assigned to new records."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"supported_entities":{"type":"string","example":1,"enum":[1,2,4,8,16,32,64,128,256,512,1024,2048],"description":"Bit flags of the entities the tag can be attached to, added together: Contact 1, Account 2, Opportunity 4, Lead 8, Project 16, Email 32, Process 64, Appointment 128, Task 256, Quote 512, CustomEntity 1024, Solution 2048.","x-enumDescriptions":{"1":"Person the sales team works with, usually linked to one or more accounts, leads and opportunities.","2":"Company or organization the sales team works with; contacts, leads, opportunities and activities are linked to it.","4":"Potential deal with a value and closing date that moves through the steps of a sales pipeline until it is won or lost.","8":"Potential sale in its early stage that moves through a lead process until it is qualified into an opportunity or lost.","16":"Project delivered for an account or run internally, with its objectives, activities and progress.","32":"Email message sent or received by users of the space, linked to the contacts, accounts and other records it concerns.","64":"Automation processes.","128":"Meeting or call scheduled in the calendar, with its invited users and contacts, linked to the records it concerns.","256":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","512":"Price offer for a customer, usually prepared from an opportunity, with product line items; it moves through a quote process.","1024":"Record of a custom entity, a kind of record the space defines (such as Vehicle or Contract) in addition to the built-in entities.","2048":"Canvas that groups related automation tools (Automatizer processes, email sequences, online forms) and tracks their status and activity."}},"use_lang":{"type":"boolean","example":false,"description":"When true, the tag name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["color","name"]},"updateTagInput":{"description":"Field values to change on a Tag record; fields left out keep their values.","properties":{"allowed_entity_type_ids":{"type":"object","description":"For tags scoped to specific record types (e.g. specific Account types), the list of type ids the tag can be assigned to. Empty/null means no per-type restriction."},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the tag, encoded as a 24-bit RGB integer: (red << 16) | (green << 8) | blue."},"creator_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the creating user."},"entity_api_name":{"type":"string","example":"string","description":"For tags scoped to custom entities, the api name of the custom entity the tag belongs to. Required for custom-entity tags and must be empty for all other tags."},"is_enabled":{"type":"boolean","example":false,"description":"When false, the tag is hidden in pickers and cannot be assigned to new records."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"use_lang":{"type":"boolean","example":false,"description":"When true, the tag name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchTagInput":{"description":"Field values of a Tag record to create, or to update when its id is set.","properties":{"allowed_entity_type_ids":{"type":"object","description":"For tags scoped to specific record types (e.g. specific Account types), the list of type ids the tag can be assigned to. Empty/null means no per-type restriction."},"color":{"type":"integer","format":"int32","example":1,"description":"Display color of the tag, encoded as a 24-bit RGB integer: (red << 16) | (green << 8) | blue."},"creator_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the creating user."},"entity_api_name":{"type":"string","example":"string","description":"For tags scoped to custom entities, the api name of the custom entity the tag belongs to. Required for custom-entity tags and must be empty for all other tags."},"is_enabled":{"type":"boolean","example":false,"description":"When false, the tag is hidden in pickers and cannot be assigned to new records."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"use_lang":{"type":"boolean","example":false,"description":"When true, the tag name is treated as a translation key and localized in the UI; otherwise the literal name is shown."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"TagRelation":{"description":"Assignment of a tag to a record.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account the tag is attached to, or empty when not attached to an account.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"appointment":{"type":"string","format":"uri","description":"Appointment the tag is attached to, or empty when not attached to an appointment.\n\nRelated Appointment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Appointment' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact the tag is attached to, or empty when not attached to a contact.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"custom_entity":{"type":"string","format":"uri","description":"Custom entity record the tag is attached to, or empty when not attached to a custom entity record.\n\nRelated CustomEntity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CustomEntity' for its fields."},"email":{"type":"string","format":"uri","description":"Email the tag is attached to, or empty when not attached to an email.\n\nRelated Email record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Email' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead the tag is attached to, or empty when not attached to a lead.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity the tag is attached to, or empty when not attached to an opportunity.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"process":{"type":"string","format":"uri","description":"Sales process the tag is attached to, or empty when not attached to a process.\n\nRelated Process record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Process' for its fields."},"project":{"type":"string","format":"uri","description":"Project the tag is attached to, or empty when not attached to a project.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote the tag is attached to, or empty when not attached to a quote.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"solution":{"type":"string","format":"uri","description":"Solution the tag is attached to, or empty when not attached to a solution.\n\nRelated Solution record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Solution' for its fields."},"tag":{"type":"string","format":"uri","description":"Tag being attached to the record.\n\nRelated Tag record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Tag' for its fields."},"task":{"type":"string","format":"uri","description":"Task the tag is attached to, or empty when not attached to a task.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked appointment."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email."},"lead_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked opportunity."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked sales process."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"solution_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked solution."},"tag_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the tag attached to the record."},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked task."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","tag","tag_id"]},"createTagRelationInput":{"description":"Field values of a new TagRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked appointment."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email."},"lead_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked opportunity."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked sales process."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"solution_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked solution."},"tag_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the tag attached to the record."},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked task."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["tag_id"]},"updateTagRelationInput":{"description":"Field values to change on a TagRelation record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked appointment."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email."},"lead_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked opportunity."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked sales process."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"solution_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked solution."},"tag_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the tag attached to the record."},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked task."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchTagRelationInput":{"description":"Field values of a TagRelation record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"appointment_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked appointment."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"custom_entity_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked custom entity record."},"email_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked email."},"lead_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked lead."},"oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked opportunity."},"process_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked sales process."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote."},"solution_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked solution."},"tag_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the tag attached to the record."},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked task."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Target":{"description":"Sales target set for a user or a group of users for a period, measured by a chosen metric.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"currency":{"type":"string","format":"uri","description":"Currency the target value is expressed in. Required when calculation_type is a currency-based metric.\n\nRelated Currency record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Currency' for its fields."},"owner":{"type":"string","format":"uri","description":"User who owns the target.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"target_client":{"type":"string","format":"uri","description":"User the target is set on (the assignee). Required for User-type targets; null for group targets.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"calculation_type":{"type":"integer","description":"What the target measures: revenue from opportunities won, or the number of leads qualified or created in the target period.\n\nInteger enum value: 1 - Revenue, 2 - LeadQualified, 3 - LeadCreated","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Value of opportunities won in the target period.","2":"Number of leads qualified in the target period.","3":"Number of leads created in the target period."}},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the target currency."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the target."},"is_active":{"type":"boolean","example":false,"description":"When true, the target is currently being tracked; when false, the target is a draft or has been deactivated."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"period_from":{"type":"string","format":"date","example":"2019-01-01","description":"First date of the active target period. Set when is_active is true; recomputed from settings.period when activated."},"period_to":{"type":"string","format":"date","example":"2019-01-01","description":"Last date of the active target period."},"settings":{"type":"string","format":"binary","example":"blob","description":"Target configuration: period (year, quarter/month etc.), value, fragment breakdown and indicator inputs. Stored as a JSON document. This payload conforms to the `TargetsSettings` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/TargetsSettings.json","description":"TargetsSettings JSON Schema"}},"target_client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assignee user."},"type":{"type":"integer","description":"Kind of target: a User target for target_client, a group target that is split into or combines user targets, or a Simulated what-if target.\n\nInteger enum value: 1 - User, 2 - GroupFromUser, 3 - GroupFromExisting, 4 - Simulated","example":1,"enum":[1,2,3,4],"x-enumDescriptions":{"1":"Target assigned to a single user.","2":"Group target that defines the settings and is split into user targets for its members.","3":"Group target that combines existing user targets.","4":"What-if target used to simulate the activity needed to reach a goal."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"child_targets":{"type":"array","items":{"type":"string","format":"uri","description":"Related TargetRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TargetRelation' for its fields."},"description":"User-level child targets that aggregate into this group target."}},"required":["is_delete_protected","id","currency","owner","is_active","name","owner_id","settings"]},"createTargetInput":{"description":"Field values of a new Target record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"calculation_type":{"type":"integer","description":"What the target measures: revenue from opportunities won, or the number of leads qualified or created in the target period.\n\nInteger enum value: 1 - Revenue, 2 - LeadQualified, 3 - LeadCreated","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Value of opportunities won in the target period.","2":"Number of leads qualified in the target period.","3":"Number of leads created in the target period."}},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the target currency."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the target."},"is_active":{"type":"boolean","example":false,"description":"When true, the target is currently being tracked; when false, the target is a draft or has been deactivated."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"period_from":{"type":"string","format":"date","example":"2019-01-01","description":"First date of the active target period. Set when is_active is true; recomputed from settings.period when activated."},"period_to":{"type":"string","format":"date","example":"2019-01-01","description":"Last date of the active target period."},"target_client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assignee user."},"type":{"type":"integer","description":"Kind of target: a User target for target_client, a group target that is split into or combines user targets, or a Simulated what-if target.\n\nInteger enum value: 1 - User, 2 - GroupFromUser, 3 - GroupFromExisting, 4 - Simulated","example":1,"enum":[1,2,3,4],"x-enumDescriptions":{"1":"Target assigned to a single user.","2":"Group target that defines the settings and is split into user targets for its members.","3":"Group target that combines existing user targets.","4":"What-if target used to simulate the activity needed to reach a goal."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"child_targets":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TargetRelation record."}},"description":"Related TargetRelation record; see 'createTargetRelationInput' for its fields."},"description":"User-level child targets that aggregate into this group target."}},"required":["is_active","name","owner_id"]},"updateTargetInput":{"description":"Field values to change on a Target record; fields left out keep their values.","properties":{"calculation_type":{"type":"integer","description":"What the target measures: revenue from opportunities won, or the number of leads qualified or created in the target period.\n\nInteger enum value: 1 - Revenue, 2 - LeadQualified, 3 - LeadCreated","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Value of opportunities won in the target period.","2":"Number of leads qualified in the target period.","3":"Number of leads created in the target period."}},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the target currency."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the target."},"is_active":{"type":"boolean","example":false,"description":"When true, the target is currently being tracked; when false, the target is a draft or has been deactivated."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"period_from":{"type":"string","format":"date","example":"2019-01-01","description":"First date of the active target period. Set when is_active is true; recomputed from settings.period when activated."},"period_to":{"type":"string","format":"date","example":"2019-01-01","description":"Last date of the active target period."},"target_client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assignee user."},"type":{"type":"integer","description":"Kind of target: a User target for target_client, a group target that is split into or combines user targets, or a Simulated what-if target.\n\nInteger enum value: 1 - User, 2 - GroupFromUser, 3 - GroupFromExisting, 4 - Simulated","example":1,"enum":[1,2,3,4],"x-enumDescriptions":{"1":"Target assigned to a single user.","2":"Group target that defines the settings and is split into user targets for its members.","3":"Group target that combines existing user targets.","4":"What-if target used to simulate the activity needed to reach a goal."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"child_targets":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TargetRelation record."}},"description":"Related TargetRelation record; see 'updateTargetRelationInput' for its fields."},"description":"User-level child targets that aggregate into this group target."}}},"batchTargetInput":{"description":"Field values of a Target record to create, or to update when its id is set.","properties":{"calculation_type":{"type":"integer","description":"What the target measures: revenue from opportunities won, or the number of leads qualified or created in the target period.\n\nInteger enum value: 1 - Revenue, 2 - LeadQualified, 3 - LeadCreated","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Value of opportunities won in the target period.","2":"Number of leads qualified in the target period.","3":"Number of leads created in the target period."}},"currency_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the target currency."},"description":{"type":"string","example":"string","description":"Free-text description shown alongside the target."},"is_active":{"type":"boolean","example":false,"description":"When true, the target is currently being tracked; when false, the target is a draft or has been deactivated."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the owning user."},"period_from":{"type":"string","format":"date","example":"2019-01-01","description":"First date of the active target period. Set when is_active is true; recomputed from settings.period when activated."},"period_to":{"type":"string","format":"date","example":"2019-01-01","description":"Last date of the active target period."},"target_client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the assignee user."},"type":{"type":"integer","description":"Kind of target: a User target for target_client, a group target that is split into or combines user targets, or a Simulated what-if target.\n\nInteger enum value: 1 - User, 2 - GroupFromUser, 3 - GroupFromExisting, 4 - Simulated","example":1,"enum":[1,2,3,4],"x-enumDescriptions":{"1":"Target assigned to a single user.","2":"Group target that defines the settings and is split into user targets for its members.","3":"Group target that combines existing user targets.","4":"What-if target used to simulate the activity needed to reach a goal."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"child_targets":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TargetRelation record."}},"description":"Related TargetRelation record; see 'updateTargetRelationInput' for its fields."},"description":"User-level child targets that aggregate into this group target."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"TargetRelation":{"description":"Link between a group target and a user target that rolls up into it.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"group_target":{"type":"string","format":"uri","description":"Parent group target that aggregates the user target.\n\nRelated Target record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Target' for its fields."},"user_target":{"type":"string","format":"uri","description":"Child user target rolling up into the group target.\n\nRelated Target record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Target' for its fields."},"group_target_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent group target that aggregates the user target."},"user_target_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user target that rolls up into the group target."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","group_target","user_target","group_target_id","user_target_id"]},"createTargetRelationInput":{"description":"Field values of a new TargetRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"group_target_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent group target that aggregates the user target."},"user_target_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user target that rolls up into the group target."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["group_target_id","user_target_id"]},"updateTargetRelationInput":{"description":"Field values to change on a TargetRelation record; fields left out keep their values.","properties":{"group_target_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent group target that aggregates the user target."},"user_target_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user target that rolls up into the group target."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchTargetRelationInput":{"description":"Field values of a TargetRelation record to create, or to update when its id is set.","properties":{"group_target_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent group target that aggregates the user target."},"user_target_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user target that rolls up into the group target."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Task":{"description":"Task (e.g. a to-do or a call) owned by a user, with an optional due date, and linked to records.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"active_reminder":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the next pending reminder configured for the activity (reminder time, due date or end date as applicable). Empty when no reminder is pending."},"media_transcription_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked Media record holding the activity's call recording / transcription, when available."},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"activity_type":{"type":"string","format":"uri","description":"Task type that classifies this task (e.g. Task, Call, Email). Drives form layout and icon.\n\nRelated TaskType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TaskType' for its fields."},"call":{"type":"string","format":"uri","description":"Call record associated with this task when the task represents a phone call.\n\nRelated Call record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Call' for its fields."},"call_outcome":{"type":"string","format":"uri","description":"Configurable outcome of the call (e.g. Reached, Voicemail, No Answer).\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"currency_exchange_rates_list":{"type":"string","format":"uri","description":"Currency exchange rate list used to convert monetary fields linked to this task. Empty to inherit the team space default.\n\nRelated CurrencyExchangeRatesList record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CurrencyExchangeRatesList' for its fields."},"owner":{"type":"string","format":"uri","description":"Sales user who owns this task. May be empty when the task is unassigned and available for take-over.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit this task is assigned to. Determines which team members can see the record under unit-based sharing.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"activity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task type."},"call_duration":{"type":"integer","format":"int32","example":1,"description":"Duration of the recorded call. Set automatically when the task is linked to a call log."},"call_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked call record."},"call_outcome_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the call outcome option recorded for the call (e.g. Reached, Voicemail, No Answer)."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this task."},"description":{"type":"string","example":"string","description":"Free-form description of what the task entails."},"due_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date by which the task is expected to be completed."},"duration":{"type":"number","format":"double","example":"4.32","description":"Estimated duration of the task. Stored as a duration value (days/hours/minutes)."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task owner."},"priority":{"type":"integer","description":"Priority level of the task: Low, Medium or High.\n\nInteger enum value: 1 - Low, 2 - Medium, 3 - High","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Low priority.","2":"Medium priority.","3":"High priority."}},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when work on the task is scheduled to begin."},"status":{"type":"integer","description":"Current status of the task (NotStarted, InProgress, Waiting, Completed, Deferred). Toggling to Completed marks any linked checklist items as done.\n\nInteger enum value: 1 - NotStarted, 2 - InProgress, 3 - Waiting, 4 - Completed, 5 - Deferred","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Work on the task has not started.","2":"The task is being worked on.","3":"The task is waiting on someone or something else.","4":"The task is done.","5":"The task has been postponed."}},"subject":{"type":"string","example":"string","description":"Short summary line shown in lists and notifications."},"table_name":{"type":"string","example":"string","description":"Discriminator identifying the concrete record type — always \"task\" for Task records. Read-only; useful when consuming polymorphic Activity results.","readOnly":true},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"string","format":"uri","description":"Related TaskSharingSalesUnitRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TaskSharingSalesUnitRelation' for its fields."},"description":"Sales units that have been granted shared access to this task. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"string","format":"uri","description":"Related TaskSharingClientRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TaskSharingClientRelation' for its fields."},"description":"Users that have been granted shared access to this task. Editable only when share_mode allows user sharing."},"account_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityRelation' for its fields."},"description":"Accounts this task is linked to."},"contact_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityRelation' for its fields."},"description":"Contacts this task is linked to."},"lead_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityRelation' for its fields."},"description":"Leads this task is linked to."},"opportunity_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityRelation' for its fields."},"description":"Opportunities this task is linked to."},"project_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityRelation' for its fields."},"description":"Projects this task is linked to, including the per-objective ordering."},"quote_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityRelation' for its fields."},"description":"Quotes this task is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityRelation' for its fields."},"description":"Custom entity records this task is linked to."},"exchange_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"gapi_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"o365_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"reminder":{"type":"string","format":"uri","description":"Reminder set by the current authenticated user for this task. Per-user; empty when no reminder has been set.\n\nRelated TaskReminder record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TaskReminder' for its fields."},"task_recurrence":{"type":"string","format":"uri","description":"Recurrence schedule generating periodic copies of this task, or empty when no recurrence is set up.\n\nRelated TaskRecurrence record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TaskRecurrence' for its fields."},"documents":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Documents linked to this task."},"comments":{"type":"array","items":{"type":"string","format":"uri","description":"Related ActivityComment record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ActivityComment' for its fields."},"description":"Comments authored on this task."},"tags":{"type":"array","items":{"type":"string","format":"uri","description":"Related TagRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TagRelation' for its fields."},"description":"Tag labels applied to this task."},"formatted_name":{"type":"string","example":"string","description":"Display name of the task (alias of subject)."},"modified_by_user":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp of the most recent modification made by an end user (excluding system changes). Read-only; computed by Coevera."}},"required":["is_delete_protected","id","activity_type","unit","subject","table_name","formatted_name"]},"createTaskInput":{"description":"Field values of a new Task record.","properties":{"media_transcription_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked Media record holding the activity's call recording / transcription, when available."},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"activity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task type."},"call_duration":{"type":"integer","format":"int32","example":1,"description":"Duration of the recorded call. Set automatically when the task is linked to a call log."},"call_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked call record."},"call_outcome_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the call outcome option recorded for the call (e.g. Reached, Voicemail, No Answer)."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this task."},"description":{"type":"string","example":"string","description":"Free-form description of what the task entails."},"due_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date by which the task is expected to be completed."},"duration":{"type":"number","format":"double","example":"4.32","description":"Estimated duration of the task. Stored as a duration value (days/hours/minutes)."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task owner."},"priority":{"type":"integer","description":"Priority level of the task: Low, Medium or High.\n\nInteger enum value: 1 - Low, 2 - Medium, 3 - High","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Low priority.","2":"Medium priority.","3":"High priority."}},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when work on the task is scheduled to begin."},"status":{"type":"integer","description":"Current status of the task (NotStarted, InProgress, Waiting, Completed, Deferred). Toggling to Completed marks any linked checklist items as done.\n\nInteger enum value: 1 - NotStarted, 2 - InProgress, 3 - Waiting, 4 - Completed, 5 - Deferred","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Work on the task has not started.","2":"The task is being worked on.","3":"The task is waiting on someone or something else.","4":"The task is done.","5":"The task has been postponed."}},"subject":{"type":"string","example":"string","description":"Short summary line shown in lists and notifications."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TaskSharingSalesUnitRelation record."}},"description":"Related TaskSharingSalesUnitRelation record; see 'createTaskSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this task. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TaskSharingClientRelation record."}},"description":"Related TaskSharingClientRelation record; see 'createTaskSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this task. Editable only when share_mode allows user sharing."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'createActivityRelationInput' for its fields."},"description":"Accounts this task is linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'createActivityRelationInput' for its fields."},"description":"Contacts this task is linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'createActivityRelationInput' for its fields."},"description":"Leads this task is linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'createActivityRelationInput' for its fields."},"description":"Opportunities this task is linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'createActivityRelationInput' for its fields."},"description":"Projects this task is linked to, including the per-objective ordering."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'createActivityRelationInput' for its fields."},"description":"Quotes this task is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'createActivityRelationInput' for its fields."},"description":"Custom entity records this task is linked to."},"reminder":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TaskReminder record."}},"description":"Reminder set by the current authenticated user for this task. Per-user; empty when no reminder has been set.\n\nRelated TaskReminder record; see 'createTaskReminderInput' for its fields."},"task_recurrence":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TaskRecurrence record."}},"description":"Recurrence schedule generating periodic copies of this task, or empty when no recurrence is set up.\n\nRelated TaskRecurrence record; see 'createTaskRecurrenceInput' for its fields."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Documents linked to this task."},"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityComment record."}},"description":"Related ActivityComment record; see 'createActivityCommentInput' for its fields."},"description":"Comments authored on this task."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'createTagRelationInput' for its fields."},"description":"Tag labels applied to this task."},"call_sid":{"type":"string","example":"string","description":"Identifier (SID) of a phone call made through Coevera calling, to attach that call to the task; null detaches the call. Write-only."}},"required":["subject"]},"updateTaskInput":{"description":"Field values to change on a Task record; fields left out keep their values.","properties":{"media_transcription_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked Media record holding the activity's call recording / transcription, when available."},"activity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task type."},"call_duration":{"type":"integer","format":"int32","example":1,"description":"Duration of the recorded call. Set automatically when the task is linked to a call log."},"call_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked call record."},"call_outcome_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the call outcome option recorded for the call (e.g. Reached, Voicemail, No Answer)."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this task."},"description":{"type":"string","example":"string","description":"Free-form description of what the task entails."},"due_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date by which the task is expected to be completed."},"duration":{"type":"number","format":"double","example":"4.32","description":"Estimated duration of the task. Stored as a duration value (days/hours/minutes)."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task owner."},"priority":{"type":"integer","description":"Priority level of the task: Low, Medium or High.\n\nInteger enum value: 1 - Low, 2 - Medium, 3 - High","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Low priority.","2":"Medium priority.","3":"High priority."}},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when work on the task is scheduled to begin."},"status":{"type":"integer","description":"Current status of the task (NotStarted, InProgress, Waiting, Completed, Deferred). Toggling to Completed marks any linked checklist items as done.\n\nInteger enum value: 1 - NotStarted, 2 - InProgress, 3 - Waiting, 4 - Completed, 5 - Deferred","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Work on the task has not started.","2":"The task is being worked on.","3":"The task is waiting on someone or something else.","4":"The task is done.","5":"The task has been postponed."}},"subject":{"type":"string","example":"string","description":"Short summary line shown in lists and notifications."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TaskSharingSalesUnitRelation record."}},"description":"Related TaskSharingSalesUnitRelation record; see 'updateTaskSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this task. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TaskSharingClientRelation record."}},"description":"Related TaskSharingClientRelation record; see 'updateTaskSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this task. Editable only when share_mode allows user sharing."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Accounts this task is linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Contacts this task is linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Leads this task is linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Opportunities this task is linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Projects this task is linked to, including the per-objective ordering."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Quotes this task is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Custom entity records this task is linked to."},"exchange_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"gapi_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"o365_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"task_recurrence":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TaskRecurrence record."}},"description":"Recurrence schedule generating periodic copies of this task, or empty when no recurrence is set up.\n\nRelated TaskRecurrence record; see 'updateTaskRecurrenceInput' for its fields."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this task."},"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityComment record."}},"description":"Related ActivityComment record; see 'updateActivityCommentInput' for its fields."},"description":"Comments authored on this task."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this task."},"call_sid":{"type":"string","example":"string","description":"Identifier (SID) of a phone call made through Coevera calling, to attach that call to the task; null detaches the call. Write-only."}}},"batchTaskInput":{"description":"Field values of a Task record to create, or to update when its id is set.","properties":{"media_transcription_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked Media record holding the activity's call recording / transcription, when available."},"activity_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task type."},"call_duration":{"type":"integer","format":"int32","example":1,"description":"Duration of the recorded call. Set automatically when the task is linked to a call log."},"call_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked call record."},"call_outcome_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the call outcome option recorded for the call (e.g. Reached, Voicemail, No Answer)."},"currency_exchange_rates_list_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the currency exchange rate list applied to this task."},"description":{"type":"string","example":"string","description":"Free-form description of what the task entails."},"due_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date by which the task is expected to be completed."},"duration":{"type":"number","format":"double","example":"4.32","description":"Estimated duration of the task. Stored as a duration value (days/hours/minutes)."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task owner."},"priority":{"type":"integer","description":"Priority level of the task: Low, Medium or High.\n\nInteger enum value: 1 - Low, 2 - Medium, 3 - High","example":1,"enum":[1,2,3],"x-enumDescriptions":{"1":"Low priority.","2":"Medium priority.","3":"High priority."}},"share_mode":{"type":"integer","description":"Sharing model applied on top of the owner/unit visibility (e.g. shared with selected sales units or selected users).\n\nInteger enum value: 0 - Standard, 1 - Private, 2 - AllView, 3 - AllEdit","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Visible according to user roles and sales units, plus the users and units listed in sharingClients and sharingUnits.","1":"Visible only to the owner.","2":"All users can view the record.","3":"All users can view and edit the record."}},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date when work on the task is scheduled to begin."},"status":{"type":"integer","description":"Current status of the task (NotStarted, InProgress, Waiting, Completed, Deferred). Toggling to Completed marks any linked checklist items as done.\n\nInteger enum value: 1 - NotStarted, 2 - InProgress, 3 - Waiting, 4 - Completed, 5 - Deferred","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Work on the task has not started.","2":"The task is being worked on.","3":"The task is waiting on someone or something else.","4":"The task is done.","5":"The task has been postponed."}},"subject":{"type":"string","example":"string","description":"Short summary line shown in lists and notifications."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"sharing_units":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TaskSharingSalesUnitRelation record."}},"description":"Related TaskSharingSalesUnitRelation record; see 'updateTaskSharingSalesUnitRelationInput' for its fields."},"description":"Sales units that have been granted shared access to this task. Editable only when share_mode allows unit sharing."},"sharing_clients":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TaskSharingClientRelation record."}},"description":"Related TaskSharingClientRelation record; see 'updateTaskSharingClientRelationInput' for its fields."},"description":"Users that have been granted shared access to this task. Editable only when share_mode allows user sharing."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Accounts this task is linked to."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Contacts this task is linked to."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Leads this task is linked to."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Opportunities this task is linked to."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Projects this task is linked to, including the per-objective ordering."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Quotes this task is linked to."},"custom_entity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityRelation record."}},"description":"Related ActivityRelation record; see 'updateActivityRelationInput' for its fields."},"description":"Custom entity records this task is linked to."},"exchange_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"gapi_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"o365_entity_id":{"type":"string","example":"string","description":"External identifier of the record in the linked third-party service (e.g. Google, Microsoft 365, Exchange). Maintained by the sync engine."},"task_recurrence":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TaskRecurrence record."}},"description":"Recurrence schedule generating periodic copies of this task, or empty when no recurrence is set up.\n\nRelated TaskRecurrence record; see 'updateTaskRecurrenceInput' for its fields."},"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Documents linked to this task."},"comments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related ActivityComment record."}},"description":"Related ActivityComment record; see 'updateActivityCommentInput' for its fields."},"description":"Comments authored on this task."},"tags":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TagRelation record."}},"description":"Related TagRelation record; see 'updateTagRelationInput' for its fields."},"description":"Tag labels applied to this task."},"call_sid":{"type":"string","example":"string","description":"Identifier (SID) of a phone call made through Coevera calling, to attach that call to the task; null detaches the call. Write-only."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"TaskRecurrence":{"description":"Recurrence rule that defines when the next occurrences of a recurring task are created.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"task":{"type":"string","format":"uri","description":"Task this recurrence belongs to. Each recurrence is bound to exactly one task.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"day":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The day of the month. This setting is applicable only for RecurrenceTypeEnum.MonthlyRelative and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Day1, 2 - Day2, 3 - Day3, 4 - Day4, 5 - Day5, 6 - Day6, 7 - Day7, 8 - Day8, 9 - Day9, 10 - Day10, 11 - Day11, 12 - Day12, 13 - Day13, 14 - Day14, 15 - Day15, 16 - Day16, 17 - Day17, 18 - Day18, 19 - Day19, 20 - Day20, 21 - Day21, 22 - Day22, 23 - Day23, 24 - Day24, 25 - Day25, 26 - Day26, 27 - Day27, 28 - Day28, 29 - Day29, 30 - Day30, 31 - Day31","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],"x-enumDescriptions":{"1":"Day 1 of the month.","2":"Day 2 of the month.","3":"Day 3 of the month.","4":"Day 4 of the month.","5":"Day 5 of the month.","6":"Day 6 of the month.","7":"Day 7 of the month.","8":"Day 8 of the month.","9":"Day 9 of the month.","10":"Day 10 of the month.","11":"Day 11 of the month.","12":"Day 12 of the month.","13":"Day 13 of the month.","14":"Day 14 of the month.","15":"Day 15 of the month.","16":"Day 16 of the month.","17":"Day 17 of the month.","18":"Day 18 of the month.","19":"Day 19 of the month.","20":"Day 20 of the month.","21":"Day 21 of the month.","22":"Day 22 of the month.","23":"Day 23 of the month.","24":"Day 24 of the month.","25":"Day 25 of the month.","26":"Day 26 of the month.","27":"Day 27 of the month.","28":"Day 28 of the month.","29":"Day 29 of the month.","30":"Day 30 of the month.","31":"Day 31 of the month."}},"day_of_week":{"type":"string","example":1,"enum":[1,2,4,8,16,32,64],"description":"Bit Flag field, with limited combination of integer values.\n\nOptions:\nSunday = 1 (0b0000001)\nMonday = 2 (0b0000010)\nTuesday = 4 (0b0000100)\nWednesday = 8 (0b0001000)\nThursday = 16 (0b0010000)\nFriday = 32 (0b0100000)\nSaturday = 64 (0b1000000) The days of week in bit mask, number where every bit means one day (e.g. 0010001 = every Monday and Friday), bit 0 is Monday. This setting is applicable only for RecurrenceTypeEnum.Weekly, RecurrenceTypeEnum.MonthlyAbsolute, RecurrenceTypeEnum.YearlyAbsolute.","x-enumDescriptions":{"1":"Sunday.","2":"Monday.","4":"Tuesday.","8":"Wednesday.","16":"Thursday.","32":"Friday.","64":"Saturday."}},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The last date when no more other items should be created."},"month":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The number of month this setting is applicable only     for RecurrenceTypeEnum.YearlyAbsolute and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Month1, 2 - Month2, 3 - Month3, 4 - Month4, 5 - Month5, 6 - Month6, 7 - Month7, 8 - Month8, 9 - Month9, 10 - Month10, 11 - Month11, 12 - Month12","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"January.","2":"February.","3":"March.","4":"April.","5":"May.","6":"June.","7":"July.","8":"August.","9":"September.","10":"October.","11":"November.","12":"December."}},"occur_every":{"type":"integer","format":"int32","example":1,"description":"The number of units of a given recurrence type between     occurrences according to RecurrenceTypeEnum."},"occurrences_count":{"type":"integer","format":"int32","example":1,"description":"Whole natural number. The number of remaining occurrences. Each time a new     one is created, it decreases. When item is set to 1, only last one can be created. If it is set to 0,     recurrence is stopped. If -1, no limits are applied."},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The effective start date of recurrence, which means each     next recurrence must be on or after this date."},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent task."},"type":{"type":"integer","description":"Recurrence cadence (e.g. Daily, Weekly, MonthlyAbsolute, MonthlyRelative, YearlyAbsolute, YearlyRelative, AfterNDays, AfterNWeeks, AfterNMonths, AfterNYears).\n\nInteger enum value: 0 - NotSet, 1 - Daily, 2 - Weekly, 3 - MonthlyRelative, 4 - MonthlyAbsolute, 5 - YearlyRelative, 6 - YearlyAbsolute, 7 - AfterNDays, 8 - AfterNWeeks, 9 - AfterNMonths, 10 - AfterNYears","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10],"x-enumDescriptions":{"0":"No recurrence; no further items are created.","1":"Repeats every occurEvery days on a fixed schedule.","2":"Repeats every occurEvery weeks on the weekdays set in dayOfWeek.","3":"Repeats every occurEvery months on a fixed day of the month given by day.","4":"Repeats every occurEvery months on a given weekday of a given week of the month (week and dayOfWeek), for example the last Friday.","5":"Repeats every year on a fixed date given by month and day.","6":"Repeats every year on a given weekday of a given week in a given month (month, week and dayOfWeek).","7":"Creates the next item occurEvery days after the current one is completed.","8":"Creates the next item occurEvery weeks after the current one is completed.","9":"Creates the next item occurEvery months after the current one is completed.","10":"Creates the next item occurEvery years after the current one is completed."}},"week":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The week of month. This setting is applicable only     for RecurrenceTypeEnum.MonthlyAbsolute and RecurrenceTypeEnum.YearlyAbsolute.\n\nInteger enum value: -1 - WeekLast, 1 - Week1, 2 - Week2, 3 - Week3, 4 - Week4","example":-1,"enum":[-1,1,2,3,4],"x-enumDescriptions":{"1":"The first occurrence of the selected weekday in the month.","2":"The second occurrence of the selected weekday in the month.","3":"The third occurrence of the selected weekday in the month.","4":"The fourth occurrence of the selected weekday in the month.","-1":"The last occurrence of the selected weekday in the month."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","task","start_date","task_id"]},"createTaskRecurrenceInput":{"description":"Field values of a new TaskRecurrence record.","properties":{"apply_recurrence":{"type":"boolean","example":false,"description":"Default true. When set, then reccurence will apply when other conditions passed. With the value false (e.g. when skip button is used) then recurrence will not apply"},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"day":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The day of the month. This setting is applicable only for RecurrenceTypeEnum.MonthlyRelative and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Day1, 2 - Day2, 3 - Day3, 4 - Day4, 5 - Day5, 6 - Day6, 7 - Day7, 8 - Day8, 9 - Day9, 10 - Day10, 11 - Day11, 12 - Day12, 13 - Day13, 14 - Day14, 15 - Day15, 16 - Day16, 17 - Day17, 18 - Day18, 19 - Day19, 20 - Day20, 21 - Day21, 22 - Day22, 23 - Day23, 24 - Day24, 25 - Day25, 26 - Day26, 27 - Day27, 28 - Day28, 29 - Day29, 30 - Day30, 31 - Day31","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],"x-enumDescriptions":{"1":"Day 1 of the month.","2":"Day 2 of the month.","3":"Day 3 of the month.","4":"Day 4 of the month.","5":"Day 5 of the month.","6":"Day 6 of the month.","7":"Day 7 of the month.","8":"Day 8 of the month.","9":"Day 9 of the month.","10":"Day 10 of the month.","11":"Day 11 of the month.","12":"Day 12 of the month.","13":"Day 13 of the month.","14":"Day 14 of the month.","15":"Day 15 of the month.","16":"Day 16 of the month.","17":"Day 17 of the month.","18":"Day 18 of the month.","19":"Day 19 of the month.","20":"Day 20 of the month.","21":"Day 21 of the month.","22":"Day 22 of the month.","23":"Day 23 of the month.","24":"Day 24 of the month.","25":"Day 25 of the month.","26":"Day 26 of the month.","27":"Day 27 of the month.","28":"Day 28 of the month.","29":"Day 29 of the month.","30":"Day 30 of the month.","31":"Day 31 of the month."}},"day_of_week":{"type":"string","example":1,"enum":[1,2,4,8,16,32,64],"description":"Bit Flag field, with limited combination of integer values.\n\nOptions:\nSunday = 1 (0b0000001)\nMonday = 2 (0b0000010)\nTuesday = 4 (0b0000100)\nWednesday = 8 (0b0001000)\nThursday = 16 (0b0010000)\nFriday = 32 (0b0100000)\nSaturday = 64 (0b1000000) The days of week in bit mask, number where every bit means one day (e.g. 0010001 = every Monday and Friday), bit 0 is Monday. This setting is applicable only for RecurrenceTypeEnum.Weekly, RecurrenceTypeEnum.MonthlyAbsolute, RecurrenceTypeEnum.YearlyAbsolute.","x-enumDescriptions":{"1":"Sunday.","2":"Monday.","4":"Tuesday.","8":"Wednesday.","16":"Thursday.","32":"Friday.","64":"Saturday."}},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The last date when no more other items should be created."},"month":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The number of month this setting is applicable only     for RecurrenceTypeEnum.YearlyAbsolute and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Month1, 2 - Month2, 3 - Month3, 4 - Month4, 5 - Month5, 6 - Month6, 7 - Month7, 8 - Month8, 9 - Month9, 10 - Month10, 11 - Month11, 12 - Month12","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"January.","2":"February.","3":"March.","4":"April.","5":"May.","6":"June.","7":"July.","8":"August.","9":"September.","10":"October.","11":"November.","12":"December."}},"occur_every":{"type":"integer","format":"int32","example":1,"description":"The number of units of a given recurrence type between     occurrences according to RecurrenceTypeEnum."},"occurrences_count":{"type":"integer","format":"int32","example":1,"description":"Whole natural number. The number of remaining occurrences. Each time a new     one is created, it decreases. When item is set to 1, only last one can be created. If it is set to 0,     recurrence is stopped. If -1, no limits are applied."},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The effective start date of recurrence, which means each     next recurrence must be on or after this date."},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent task."},"type":{"type":"integer","description":"Recurrence cadence (e.g. Daily, Weekly, MonthlyAbsolute, MonthlyRelative, YearlyAbsolute, YearlyRelative, AfterNDays, AfterNWeeks, AfterNMonths, AfterNYears).\n\nInteger enum value: 0 - NotSet, 1 - Daily, 2 - Weekly, 3 - MonthlyRelative, 4 - MonthlyAbsolute, 5 - YearlyRelative, 6 - YearlyAbsolute, 7 - AfterNDays, 8 - AfterNWeeks, 9 - AfterNMonths, 10 - AfterNYears","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10],"x-enumDescriptions":{"0":"No recurrence; no further items are created.","1":"Repeats every occurEvery days on a fixed schedule.","2":"Repeats every occurEvery weeks on the weekdays set in dayOfWeek.","3":"Repeats every occurEvery months on a fixed day of the month given by day.","4":"Repeats every occurEvery months on a given weekday of a given week of the month (week and dayOfWeek), for example the last Friday.","5":"Repeats every year on a fixed date given by month and day.","6":"Repeats every year on a given weekday of a given week in a given month (month, week and dayOfWeek).","7":"Creates the next item occurEvery days after the current one is completed.","8":"Creates the next item occurEvery weeks after the current one is completed.","9":"Creates the next item occurEvery months after the current one is completed.","10":"Creates the next item occurEvery years after the current one is completed."}},"week":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The week of month. This setting is applicable only     for RecurrenceTypeEnum.MonthlyAbsolute and RecurrenceTypeEnum.YearlyAbsolute.\n\nInteger enum value: -1 - WeekLast, 1 - Week1, 2 - Week2, 3 - Week3, 4 - Week4","example":-1,"enum":[-1,1,2,3,4],"x-enumDescriptions":{"1":"The first occurrence of the selected weekday in the month.","2":"The second occurrence of the selected weekday in the month.","3":"The third occurrence of the selected weekday in the month.","4":"The fourth occurrence of the selected weekday in the month.","-1":"The last occurrence of the selected weekday in the month."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["start_date","task_id"]},"updateTaskRecurrenceInput":{"description":"Field values to change on a TaskRecurrence record; fields left out keep their values.","properties":{"apply_recurrence":{"type":"boolean","example":false,"description":"Default true. When set, then reccurence will apply when other conditions passed. With the value false (e.g. when skip button is used) then recurrence will not apply"},"day":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The day of the month. This setting is applicable only for RecurrenceTypeEnum.MonthlyRelative and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Day1, 2 - Day2, 3 - Day3, 4 - Day4, 5 - Day5, 6 - Day6, 7 - Day7, 8 - Day8, 9 - Day9, 10 - Day10, 11 - Day11, 12 - Day12, 13 - Day13, 14 - Day14, 15 - Day15, 16 - Day16, 17 - Day17, 18 - Day18, 19 - Day19, 20 - Day20, 21 - Day21, 22 - Day22, 23 - Day23, 24 - Day24, 25 - Day25, 26 - Day26, 27 - Day27, 28 - Day28, 29 - Day29, 30 - Day30, 31 - Day31","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],"x-enumDescriptions":{"1":"Day 1 of the month.","2":"Day 2 of the month.","3":"Day 3 of the month.","4":"Day 4 of the month.","5":"Day 5 of the month.","6":"Day 6 of the month.","7":"Day 7 of the month.","8":"Day 8 of the month.","9":"Day 9 of the month.","10":"Day 10 of the month.","11":"Day 11 of the month.","12":"Day 12 of the month.","13":"Day 13 of the month.","14":"Day 14 of the month.","15":"Day 15 of the month.","16":"Day 16 of the month.","17":"Day 17 of the month.","18":"Day 18 of the month.","19":"Day 19 of the month.","20":"Day 20 of the month.","21":"Day 21 of the month.","22":"Day 22 of the month.","23":"Day 23 of the month.","24":"Day 24 of the month.","25":"Day 25 of the month.","26":"Day 26 of the month.","27":"Day 27 of the month.","28":"Day 28 of the month.","29":"Day 29 of the month.","30":"Day 30 of the month.","31":"Day 31 of the month."}},"day_of_week":{"type":"string","example":1,"enum":[1,2,4,8,16,32,64],"description":"Bit Flag field, with limited combination of integer values.\n\nOptions:\nSunday = 1 (0b0000001)\nMonday = 2 (0b0000010)\nTuesday = 4 (0b0000100)\nWednesday = 8 (0b0001000)\nThursday = 16 (0b0010000)\nFriday = 32 (0b0100000)\nSaturday = 64 (0b1000000) The days of week in bit mask, number where every bit means one day (e.g. 0010001 = every Monday and Friday), bit 0 is Monday. This setting is applicable only for RecurrenceTypeEnum.Weekly, RecurrenceTypeEnum.MonthlyAbsolute, RecurrenceTypeEnum.YearlyAbsolute.","x-enumDescriptions":{"1":"Sunday.","2":"Monday.","4":"Tuesday.","8":"Wednesday.","16":"Thursday.","32":"Friday.","64":"Saturday."}},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The last date when no more other items should be created."},"month":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The number of month this setting is applicable only     for RecurrenceTypeEnum.YearlyAbsolute and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Month1, 2 - Month2, 3 - Month3, 4 - Month4, 5 - Month5, 6 - Month6, 7 - Month7, 8 - Month8, 9 - Month9, 10 - Month10, 11 - Month11, 12 - Month12","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"January.","2":"February.","3":"March.","4":"April.","5":"May.","6":"June.","7":"July.","8":"August.","9":"September.","10":"October.","11":"November.","12":"December."}},"occur_every":{"type":"integer","format":"int32","example":1,"description":"The number of units of a given recurrence type between     occurrences according to RecurrenceTypeEnum."},"occurrences_count":{"type":"integer","format":"int32","example":1,"description":"Whole natural number. The number of remaining occurrences. Each time a new     one is created, it decreases. When item is set to 1, only last one can be created. If it is set to 0,     recurrence is stopped. If -1, no limits are applied."},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The effective start date of recurrence, which means each     next recurrence must be on or after this date."},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent task."},"type":{"type":"integer","description":"Recurrence cadence (e.g. Daily, Weekly, MonthlyAbsolute, MonthlyRelative, YearlyAbsolute, YearlyRelative, AfterNDays, AfterNWeeks, AfterNMonths, AfterNYears).\n\nInteger enum value: 0 - NotSet, 1 - Daily, 2 - Weekly, 3 - MonthlyRelative, 4 - MonthlyAbsolute, 5 - YearlyRelative, 6 - YearlyAbsolute, 7 - AfterNDays, 8 - AfterNWeeks, 9 - AfterNMonths, 10 - AfterNYears","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10],"x-enumDescriptions":{"0":"No recurrence; no further items are created.","1":"Repeats every occurEvery days on a fixed schedule.","2":"Repeats every occurEvery weeks on the weekdays set in dayOfWeek.","3":"Repeats every occurEvery months on a fixed day of the month given by day.","4":"Repeats every occurEvery months on a given weekday of a given week of the month (week and dayOfWeek), for example the last Friday.","5":"Repeats every year on a fixed date given by month and day.","6":"Repeats every year on a given weekday of a given week in a given month (month, week and dayOfWeek).","7":"Creates the next item occurEvery days after the current one is completed.","8":"Creates the next item occurEvery weeks after the current one is completed.","9":"Creates the next item occurEvery months after the current one is completed.","10":"Creates the next item occurEvery years after the current one is completed."}},"week":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The week of month. This setting is applicable only     for RecurrenceTypeEnum.MonthlyAbsolute and RecurrenceTypeEnum.YearlyAbsolute.\n\nInteger enum value: -1 - WeekLast, 1 - Week1, 2 - Week2, 3 - Week3, 4 - Week4","example":-1,"enum":[-1,1,2,3,4],"x-enumDescriptions":{"1":"The first occurrence of the selected weekday in the month.","2":"The second occurrence of the selected weekday in the month.","3":"The third occurrence of the selected weekday in the month.","4":"The fourth occurrence of the selected weekday in the month.","-1":"The last occurrence of the selected weekday in the month."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchTaskRecurrenceInput":{"description":"Field values of a TaskRecurrence record to create, or to update when its id is set.","properties":{"apply_recurrence":{"type":"boolean","example":false,"description":"Default true. When set, then reccurence will apply when other conditions passed. With the value false (e.g. when skip button is used) then recurrence will not apply"},"day":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The day of the month. This setting is applicable only for RecurrenceTypeEnum.MonthlyRelative and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Day1, 2 - Day2, 3 - Day3, 4 - Day4, 5 - Day5, 6 - Day6, 7 - Day7, 8 - Day8, 9 - Day9, 10 - Day10, 11 - Day11, 12 - Day12, 13 - Day13, 14 - Day14, 15 - Day15, 16 - Day16, 17 - Day17, 18 - Day18, 19 - Day19, 20 - Day20, 21 - Day21, 22 - Day22, 23 - Day23, 24 - Day24, 25 - Day25, 26 - Day26, 27 - Day27, 28 - Day28, 29 - Day29, 30 - Day30, 31 - Day31","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],"x-enumDescriptions":{"1":"Day 1 of the month.","2":"Day 2 of the month.","3":"Day 3 of the month.","4":"Day 4 of the month.","5":"Day 5 of the month.","6":"Day 6 of the month.","7":"Day 7 of the month.","8":"Day 8 of the month.","9":"Day 9 of the month.","10":"Day 10 of the month.","11":"Day 11 of the month.","12":"Day 12 of the month.","13":"Day 13 of the month.","14":"Day 14 of the month.","15":"Day 15 of the month.","16":"Day 16 of the month.","17":"Day 17 of the month.","18":"Day 18 of the month.","19":"Day 19 of the month.","20":"Day 20 of the month.","21":"Day 21 of the month.","22":"Day 22 of the month.","23":"Day 23 of the month.","24":"Day 24 of the month.","25":"Day 25 of the month.","26":"Day 26 of the month.","27":"Day 27 of the month.","28":"Day 28 of the month.","29":"Day 29 of the month.","30":"Day 30 of the month.","31":"Day 31 of the month."}},"day_of_week":{"type":"string","example":1,"enum":[1,2,4,8,16,32,64],"description":"Bit Flag field, with limited combination of integer values.\n\nOptions:\nSunday = 1 (0b0000001)\nMonday = 2 (0b0000010)\nTuesday = 4 (0b0000100)\nWednesday = 8 (0b0001000)\nThursday = 16 (0b0010000)\nFriday = 32 (0b0100000)\nSaturday = 64 (0b1000000) The days of week in bit mask, number where every bit means one day (e.g. 0010001 = every Monday and Friday), bit 0 is Monday. This setting is applicable only for RecurrenceTypeEnum.Weekly, RecurrenceTypeEnum.MonthlyAbsolute, RecurrenceTypeEnum.YearlyAbsolute.","x-enumDescriptions":{"1":"Sunday.","2":"Monday.","4":"Tuesday.","8":"Wednesday.","16":"Thursday.","32":"Friday.","64":"Saturday."}},"end_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The last date when no more other items should be created."},"month":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The number of month this setting is applicable only     for RecurrenceTypeEnum.YearlyAbsolute and RecurrenceTypeEnum.YearlyRelative.\n\nInteger enum value: 1 - Month1, 2 - Month2, 3 - Month3, 4 - Month4, 5 - Month5, 6 - Month6, 7 - Month7, 8 - Month8, 9 - Month9, 10 - Month10, 11 - Month11, 12 - Month12","example":1,"enum":[1,2,3,4,5,6,7,8,9,10,11,12],"x-enumDescriptions":{"1":"January.","2":"February.","3":"March.","4":"April.","5":"May.","6":"June.","7":"July.","8":"August.","9":"September.","10":"October.","11":"November.","12":"December."}},"occur_every":{"type":"integer","format":"int32","example":1,"description":"The number of units of a given recurrence type between     occurrences according to RecurrenceTypeEnum."},"occurrences_count":{"type":"integer","format":"int32","example":1,"description":"Whole natural number. The number of remaining occurrences. Each time a new     one is created, it decreases. When item is set to 1, only last one can be created. If it is set to 0,     recurrence is stopped. If -1, no limits are applied."},"start_date":{"type":"string","format":"date","example":"2019-01-01","description":"Date information. The effective start date of recurrence, which means each     next recurrence must be on or after this date."},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent task."},"type":{"type":"integer","description":"Recurrence cadence (e.g. Daily, Weekly, MonthlyAbsolute, MonthlyRelative, YearlyAbsolute, YearlyRelative, AfterNDays, AfterNWeeks, AfterNMonths, AfterNYears).\n\nInteger enum value: 0 - NotSet, 1 - Daily, 2 - Weekly, 3 - MonthlyRelative, 4 - MonthlyAbsolute, 5 - YearlyRelative, 6 - YearlyAbsolute, 7 - AfterNDays, 8 - AfterNWeeks, 9 - AfterNMonths, 10 - AfterNYears","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10],"x-enumDescriptions":{"0":"No recurrence; no further items are created.","1":"Repeats every occurEvery days on a fixed schedule.","2":"Repeats every occurEvery weeks on the weekdays set in dayOfWeek.","3":"Repeats every occurEvery months on a fixed day of the month given by day.","4":"Repeats every occurEvery months on a given weekday of a given week of the month (week and dayOfWeek), for example the last Friday.","5":"Repeats every year on a fixed date given by month and day.","6":"Repeats every year on a given weekday of a given week in a given month (month, week and dayOfWeek).","7":"Creates the next item occurEvery days after the current one is completed.","8":"Creates the next item occurEvery weeks after the current one is completed.","9":"Creates the next item occurEvery months after the current one is completed.","10":"Creates the next item occurEvery years after the current one is completed."}},"week":{"type":"integer","description":"Field whose values are strictly defined with an enumeration of values. The week of month. This setting is applicable only     for RecurrenceTypeEnum.MonthlyAbsolute and RecurrenceTypeEnum.YearlyAbsolute.\n\nInteger enum value: -1 - WeekLast, 1 - Week1, 2 - Week2, 3 - Week3, 4 - Week4","example":-1,"enum":[-1,1,2,3,4],"x-enumDescriptions":{"1":"The first occurrence of the selected weekday in the month.","2":"The second occurrence of the selected weekday in the month.","3":"The third occurrence of the selected weekday in the month.","4":"The fourth occurrence of the selected weekday in the month.","-1":"The last occurrence of the selected weekday in the month."}},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"TaskReminder":{"description":"Reminder a user set to be notified about a task at a given time.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner":{"type":"string","format":"uri","description":"User who set this reminder. Reminders are per-user.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"task":{"type":"string","format":"uri","description":"Task this reminder belongs to.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who set the reminder."},"set_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the reminder should fire."},"status":{"type":"integer","description":"Current state of the reminder: Scheduled to fire at its set time, Snoozed until snooze_date, or Dismissed.\n\nInteger enum value: 0 - Snoozed, 1 - Scheduled, 2 - Dismissed","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The reminder was postponed and fires again at its snooze date.","1":"The reminder fires at its set time.","2":"The reminder was dismissed and does not fire again."}},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task this reminder belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","owner","task","owner_id","set_date","task_id"]},"createTaskReminderInput":{"description":"Field values of a new TaskReminder record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who set the reminder."},"set_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the reminder should fire."},"status":{"type":"integer","description":"Current state of the reminder: Scheduled to fire at its set time, Snoozed until snooze_date, or Dismissed.\n\nInteger enum value: 0 - Snoozed, 1 - Scheduled, 2 - Dismissed","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The reminder was postponed and fires again at its snooze date.","1":"The reminder fires at its set time.","2":"The reminder was dismissed and does not fire again."}},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task this reminder belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["owner_id","set_date","task_id"]},"updateTaskReminderInput":{"description":"Field values to change on a TaskReminder record; fields left out keep their values.","properties":{"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who set the reminder."},"set_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the reminder should fire."},"status":{"type":"integer","description":"Current state of the reminder: Scheduled to fire at its set time, Snoozed until snooze_date, or Dismissed.\n\nInteger enum value: 0 - Snoozed, 1 - Scheduled, 2 - Dismissed","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The reminder was postponed and fires again at its snooze date.","1":"The reminder fires at its set time.","2":"The reminder was dismissed and does not fire again."}},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task this reminder belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchTaskReminderInput":{"description":"Field values of a TaskReminder record to create, or to update when its id is set.","properties":{"owner_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who set the reminder."},"set_date":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp when the reminder should fire."},"status":{"type":"integer","description":"Current state of the reminder: Scheduled to fire at its set time, Snoozed until snooze_date, or Dismissed.\n\nInteger enum value: 0 - Snoozed, 1 - Scheduled, 2 - Dismissed","example":0,"enum":[0,1,2],"x-enumDescriptions":{"0":"The reminder was postponed and fires again at its snooze date.","1":"The reminder fires at its set time.","2":"The reminder was dismissed and does not fire again."}},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task this reminder belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"TaskSharingClientRelation":{"description":"Share of a task with an individual user, with the access level granted.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client":{"type":"string","format":"uri","description":"User the task is shared with.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"task":{"type":"string","format":"uri","description":"Task being shared.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"role":{"type":"integer","description":"Access the sharing gives the user on the task: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared task."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","client","task","client_id","task_id"]},"createTaskSharingClientRelationInput":{"description":"Field values of a new TaskSharingClientRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"role":{"type":"integer","description":"Access the sharing gives the user on the task: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared task."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["client_id","task_id"]},"updateTaskSharingClientRelationInput":{"description":"Field values to change on a TaskSharingClientRelation record; fields left out keep their values.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"role":{"type":"integer","description":"Access the sharing gives the user on the task: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared task."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchTaskSharingClientRelationInput":{"description":"Field values of a TaskSharingClientRelation record to create, or to update when its id is set.","properties":{"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user."},"role":{"type":"integer","description":"Access the sharing gives the user on the task: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared task."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"TaskSharingSalesUnitRelation":{"description":"Share of a task with a sales unit, with the access level granted.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"task":{"type":"string","format":"uri","description":"Task being shared.\n\nRelated Task record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Task' for its fields."},"unit":{"type":"string","format":"uri","description":"Sales unit the task is shared with.\n\nRelated SalesUnit record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'SalesUnit' for its fields."},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the task: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared task."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","task","unit","task_id","unit_id"]},"createTaskSharingSalesUnitRelationInput":{"description":"Field values of a new TaskSharingSalesUnitRelation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"role":{"type":"integer","description":"Access the sharing gives the sales unit on the task: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared task."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["task_id","unit_id"]},"updateTaskSharingSalesUnitRelationInput":{"description":"Field values to change on a TaskSharingSalesUnitRelation record; fields left out keep their values.","properties":{"role":{"type":"integer","description":"Access the sharing gives the sales unit on the task: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared task."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchTaskSharingSalesUnitRelationInput":{"description":"Field values of a TaskSharingSalesUnitRelation record to create, or to update when its id is set.","properties":{"role":{"type":"integer","description":"Access the sharing gives the sales unit on the task: Watcher can view it, Editor can view and edit it.\n\nInteger enum value: 1 - Watcher, 2 - Editor","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Can view the record.","2":"Can view and edit the record."}},"task_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the shared task."},"unit_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sales unit."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"TaskType":{"description":"Task type that classifies tasks and defines their form and icon.","properties":{"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing tasks of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"icon":{"type":"integer","description":"Icon used to display tasks of this type in the UI.\n\nInteger enum value: 0 - GeneralIcon, 1 - Task, 2 - Appointment, 3 - Call, 4 - Mail, 5 - Message, 6 - TicketingIntegration, 7 - DocumentManagement, 8 - EventManagement, 9 - AccountingSystem, 10 - MarketingCommunicationSystems, 11 - OrderProcessing, 12 - WebServices, 13 - ReturnMerchandiseAuthorizationSystems, 14 - SalesAutomatization, 15 - SmsMessaging, 16 - ErpSystems, 17 - DataAnalytics, 18 - Warehouses, 19 - ContactManagement, 20 - ContentManagementSystems, 21 - InventorySystems, 22 - Workflow, 23 - AssetManagementSystem","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],"x-enumDescriptions":{"0":"Generic activity icon not tied to a specific kind of activity.","1":"Icon depicting a task; the default for task types.","2":"Icon depicting an appointment; the default for appointment types.","3":"Icon depicting a phone call.","4":"Icon depicting an email.","5":"Icon depicting a message.","6":"Icon depicting a ticketing system integration.","7":"Icon depicting document management.","8":"Icon depicting event management.","9":"Icon depicting an accounting system.","10":"Icon depicting a marketing communication system.","11":"Icon depicting order processing.","12":"Icon depicting web services.","13":"Icon depicting a return merchandise authorization (RMA) system.","14":"Icon depicting sales automation.","15":"Icon depicting SMS messaging.","16":"Icon depicting an ERP system.","17":"Icon depicting data analytics.","18":"Icon depicting a warehouse.","19":"Icon depicting contact management.","20":"Icon depicting a content management system.","21":"Icon depicting an inventory system.","22":"Icon depicting a workflow.","23":"Icon depicting an asset management system."}},"is_readonly":{"type":"boolean","example":false,"description":"True when the task type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"form_edit_api":{"type":"object","description":"Typed, read-only view of a form layout of this type: form_edit_api mirrors the edit form (form_edit), form_lost_api the form shown when archiving as lost (form_lost)."},"can_change_readonly":{"type":"boolean","example":false,"description":"False for types whose read-only setting is fixed, such as the recurrent appointment type; true otherwise."}},"required":["id","is_readonly","name","has_draft","is_delete_protected","form_edit_api"]},"createTaskTypeInput":{"description":"Field values of a new TaskType record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing tasks of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"icon":{"type":"integer","description":"Icon used to display tasks of this type in the UI.\n\nInteger enum value: 0 - GeneralIcon, 1 - Task, 2 - Appointment, 3 - Call, 4 - Mail, 5 - Message, 6 - TicketingIntegration, 7 - DocumentManagement, 8 - EventManagement, 9 - AccountingSystem, 10 - MarketingCommunicationSystems, 11 - OrderProcessing, 12 - WebServices, 13 - ReturnMerchandiseAuthorizationSystems, 14 - SalesAutomatization, 15 - SmsMessaging, 16 - ErpSystems, 17 - DataAnalytics, 18 - Warehouses, 19 - ContactManagement, 20 - ContentManagementSystems, 21 - InventorySystems, 22 - Workflow, 23 - AssetManagementSystem","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],"x-enumDescriptions":{"0":"Generic activity icon not tied to a specific kind of activity.","1":"Icon depicting a task; the default for task types.","2":"Icon depicting an appointment; the default for appointment types.","3":"Icon depicting a phone call.","4":"Icon depicting an email.","5":"Icon depicting a message.","6":"Icon depicting a ticketing system integration.","7":"Icon depicting document management.","8":"Icon depicting event management.","9":"Icon depicting an accounting system.","10":"Icon depicting a marketing communication system.","11":"Icon depicting order processing.","12":"Icon depicting web services.","13":"Icon depicting a return merchandise authorization (RMA) system.","14":"Icon depicting sales automation.","15":"Icon depicting SMS messaging.","16":"Icon depicting an ERP system.","17":"Icon depicting data analytics.","18":"Icon depicting a warehouse.","19":"Icon depicting contact management.","20":"Icon depicting a content management system.","21":"Icon depicting an inventory system.","22":"Icon depicting a workflow.","23":"Icon depicting an asset management system."}},"is_readonly":{"type":"boolean","example":false,"description":"True when the task type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"is_published":{"type":"boolean","example":false,"description":"True when the entity configuration is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_readonly","name"]},"updateTaskTypeInput":{"description":"Field values to change on a TaskType record; fields left out keep their values.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing tasks of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"icon":{"type":"integer","description":"Icon used to display tasks of this type in the UI.\n\nInteger enum value: 0 - GeneralIcon, 1 - Task, 2 - Appointment, 3 - Call, 4 - Mail, 5 - Message, 6 - TicketingIntegration, 7 - DocumentManagement, 8 - EventManagement, 9 - AccountingSystem, 10 - MarketingCommunicationSystems, 11 - OrderProcessing, 12 - WebServices, 13 - ReturnMerchandiseAuthorizationSystems, 14 - SalesAutomatization, 15 - SmsMessaging, 16 - ErpSystems, 17 - DataAnalytics, 18 - Warehouses, 19 - ContactManagement, 20 - ContentManagementSystems, 21 - InventorySystems, 22 - Workflow, 23 - AssetManagementSystem","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],"x-enumDescriptions":{"0":"Generic activity icon not tied to a specific kind of activity.","1":"Icon depicting a task; the default for task types.","2":"Icon depicting an appointment; the default for appointment types.","3":"Icon depicting a phone call.","4":"Icon depicting an email.","5":"Icon depicting a message.","6":"Icon depicting a ticketing system integration.","7":"Icon depicting document management.","8":"Icon depicting event management.","9":"Icon depicting an accounting system.","10":"Icon depicting a marketing communication system.","11":"Icon depicting order processing.","12":"Icon depicting web services.","13":"Icon depicting a return merchandise authorization (RMA) system.","14":"Icon depicting sales automation.","15":"Icon depicting SMS messaging.","16":"Icon depicting an ERP system.","17":"Icon depicting data analytics.","18":"Icon depicting a warehouse.","19":"Icon depicting contact management.","20":"Icon depicting a content management system.","21":"Icon depicting an inventory system.","22":"Icon depicting a workflow.","23":"Icon depicting an asset management system."}},"is_readonly":{"type":"boolean","example":false,"description":"True when the task type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchTaskTypeInput":{"description":"Field values of a TaskType record to create, or to update when its id is set.","properties":{"form_edit":{"type":"object","description":"JSON definition of the form layout used by the UI when creating or editing tasks of this type. This payload conforms to the `Form` JSON Schema (see the linked schema).","externalDocs":{"url":"schemas/Form.json","description":"Form JSON Schema"}},"icon":{"type":"integer","description":"Icon used to display tasks of this type in the UI.\n\nInteger enum value: 0 - GeneralIcon, 1 - Task, 2 - Appointment, 3 - Call, 4 - Mail, 5 - Message, 6 - TicketingIntegration, 7 - DocumentManagement, 8 - EventManagement, 9 - AccountingSystem, 10 - MarketingCommunicationSystems, 11 - OrderProcessing, 12 - WebServices, 13 - ReturnMerchandiseAuthorizationSystems, 14 - SalesAutomatization, 15 - SmsMessaging, 16 - ErpSystems, 17 - DataAnalytics, 18 - Warehouses, 19 - ContactManagement, 20 - ContentManagementSystems, 21 - InventorySystems, 22 - Workflow, 23 - AssetManagementSystem","example":0,"enum":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],"x-enumDescriptions":{"0":"Generic activity icon not tied to a specific kind of activity.","1":"Icon depicting a task; the default for task types.","2":"Icon depicting an appointment; the default for appointment types.","3":"Icon depicting a phone call.","4":"Icon depicting an email.","5":"Icon depicting a message.","6":"Icon depicting a ticketing system integration.","7":"Icon depicting document management.","8":"Icon depicting event management.","9":"Icon depicting an accounting system.","10":"Icon depicting a marketing communication system.","11":"Icon depicting order processing.","12":"Icon depicting web services.","13":"Icon depicting a return merchandise authorization (RMA) system.","14":"Icon depicting sales automation.","15":"Icon depicting SMS messaging.","16":"Icon depicting an ERP system.","17":"Icon depicting data analytics.","18":"Icon depicting a warehouse.","19":"Icon depicting contact management.","20":"Icon depicting a content management system.","21":"Icon depicting an inventory system.","22":"Icon depicting a workflow.","23":"Icon depicting an asset management system."}},"is_readonly":{"type":"boolean","example":false,"description":"True when the task type is system-managed and cannot be edited or deleted by users."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"TextMessage":{"description":"Message sent or received in a text message conversation or in an AI assistant chat.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"chat_conversation":{"type":"string","format":"uri","description":"AI assistant chat conversation this message belongs to, when applicable.\n\nRelated ChatConversation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ChatConversation' for its fields."},"text_message_conversation":{"type":"string","format":"uri","description":"Conversation this message belongs to. Empty for messages produced by AI chat that do not belong to a thread of customer conversation.\n\nRelated TextMessageConversation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TextMessageConversation' for its fields."},"chat_conversation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the AI assistant chat conversation this message belongs to, when applicable."},"content":{"type":"string","example":"string","description":"Body of the message. May be plain text or a JSON payload (e.g. AI assistant examples / suggestions)."},"datetime_sent":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the message was sent."},"direction":{"type":"integer","description":"Direction of the message (Incoming, Outgoing).\n\nInteger enum value: 1 - OutgoingEmail, 2 - IncomingEmail","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Sent from Coevera or by a user's mailbox.","2":"Received from another party."}},"message_sid":{"type":"string","example":"string","description":"External message identifier from the SMS provider (e.g. Twilio Message SID)."},"score":{"type":"integer","format":"int32","example":1,"description":"Quality score given to the message by the user (e.g. for AI-suggested replies). Used to feed back into the suggestion engine."},"status":{"type":"integer","description":"Delivery status of the message: Sending, Sent, Seen or Failed for outgoing messages, Received for incoming ones.\n\nInteger enum value: 1 - Sending, 2 - Sent, 3 - Failed, 4 - Received, 5 - Seen","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Outgoing message is queued or being sent.","2":"Message was sent.","3":"Message could not be sent.","4":"Message was received from the other party.","5":"The recipient has seen the sent message."}},"text_message_conversation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the text message conversation this message belongs to, or empty for AI assistant chat messages."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"attachments":{"type":"array","items":{"type":"string","format":"uri","description":"Related CloudObjectRelation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'CloudObjectRelation' for its fields."},"description":"Files attached to the message (e.g. MMS attachments)."},"content_as_html":{"type":"string","example":"string","description":"HTML-rendered version of the message body, ready for display in chat UIs."},"data":{"type":"string","format":"binary","example":"blob","description":"Structured AI payload of the message (examples or suggestions). Empty for regular text messages."},"topic_prompts":{"type":"string","format":"binary","example":"blob","description":"List of suggested follow-up prompts produced by the AI for this message. Empty when the AI did not produce prompts."}},"required":["is_delete_protected","id","content","direction","content_as_html","data","topic_prompts"]},"createTextMessageInput":{"description":"Field values of a new TextMessage record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"chat_conversation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the AI assistant chat conversation this message belongs to, when applicable."},"content":{"type":"string","example":"string","description":"Body of the message. May be plain text or a JSON payload (e.g. AI assistant examples / suggestions)."},"datetime_sent":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the message was sent."},"direction":{"type":"integer","description":"Direction of the message (Incoming, Outgoing).\n\nInteger enum value: 1 - OutgoingEmail, 2 - IncomingEmail","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Sent from Coevera or by a user's mailbox.","2":"Received from another party."}},"message_sid":{"type":"string","example":"string","description":"External message identifier from the SMS provider (e.g. Twilio Message SID)."},"score":{"type":"integer","format":"int32","example":1,"description":"Quality score given to the message by the user (e.g. for AI-suggested replies). Used to feed back into the suggestion engine."},"status":{"type":"integer","description":"Delivery status of the message: Sending, Sent, Seen or Failed for outgoing messages, Received for incoming ones.\n\nInteger enum value: 1 - Sending, 2 - Sent, 3 - Failed, 4 - Received, 5 - Seen","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Outgoing message is queued or being sent.","2":"Message was sent.","3":"Message could not be sent.","4":"Message was received from the other party.","5":"The recipient has seen the sent message."}},"text_message_conversation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the text message conversation this message belongs to, or empty for AI assistant chat messages."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"attachments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'createCloudObjectRelationInput' for its fields."},"description":"Files attached to the message (e.g. MMS attachments)."}},"required":["content","direction"]},"updateTextMessageInput":{"description":"Field values to change on a TextMessage record; fields left out keep their values.","properties":{"chat_conversation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the AI assistant chat conversation this message belongs to, when applicable."},"content":{"type":"string","example":"string","description":"Body of the message. May be plain text or a JSON payload (e.g. AI assistant examples / suggestions)."},"datetime_sent":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the message was sent."},"direction":{"type":"integer","description":"Direction of the message (Incoming, Outgoing).\n\nInteger enum value: 1 - OutgoingEmail, 2 - IncomingEmail","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Sent from Coevera or by a user's mailbox.","2":"Received from another party."}},"message_sid":{"type":"string","example":"string","description":"External message identifier from the SMS provider (e.g. Twilio Message SID)."},"score":{"type":"integer","format":"int32","example":1,"description":"Quality score given to the message by the user (e.g. for AI-suggested replies). Used to feed back into the suggestion engine."},"status":{"type":"integer","description":"Delivery status of the message: Sending, Sent, Seen or Failed for outgoing messages, Received for incoming ones.\n\nInteger enum value: 1 - Sending, 2 - Sent, 3 - Failed, 4 - Received, 5 - Seen","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Outgoing message is queued or being sent.","2":"Message was sent.","3":"Message could not be sent.","4":"Message was received from the other party.","5":"The recipient has seen the sent message."}},"text_message_conversation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the text message conversation this message belongs to, or empty for AI assistant chat messages."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"attachments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Files attached to the message (e.g. MMS attachments)."}}},"batchTextMessageInput":{"description":"Field values of a TextMessage record to create, or to update when its id is set.","properties":{"chat_conversation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the AI assistant chat conversation this message belongs to, when applicable."},"content":{"type":"string","example":"string","description":"Body of the message. May be plain text or a JSON payload (e.g. AI assistant examples / suggestions)."},"datetime_sent":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Timestamp the message was sent."},"direction":{"type":"integer","description":"Direction of the message (Incoming, Outgoing).\n\nInteger enum value: 1 - OutgoingEmail, 2 - IncomingEmail","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"Sent from Coevera or by a user's mailbox.","2":"Received from another party."}},"message_sid":{"type":"string","example":"string","description":"External message identifier from the SMS provider (e.g. Twilio Message SID)."},"score":{"type":"integer","format":"int32","example":1,"description":"Quality score given to the message by the user (e.g. for AI-suggested replies). Used to feed back into the suggestion engine."},"status":{"type":"integer","description":"Delivery status of the message: Sending, Sent, Seen or Failed for outgoing messages, Received for incoming ones.\n\nInteger enum value: 1 - Sending, 2 - Sent, 3 - Failed, 4 - Received, 5 - Seen","example":1,"enum":[1,2,3,4,5],"x-enumDescriptions":{"1":"Outgoing message is queued or being sent.","2":"Message was sent.","3":"Message could not be sent.","4":"Message was received from the other party.","5":"The recipient has seen the sent message."}},"text_message_conversation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the text message conversation this message belongs to, or empty for AI assistant chat messages."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"attachments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related CloudObjectRelation record."}},"description":"Related CloudObjectRelation record; see 'updateCloudObjectRelationInput' for its fields."},"description":"Files attached to the message (e.g. MMS attachments)."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"TextMessageConversation":{"description":"Text message conversation between a Coevera phone number and an external phone number.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"phone":{"type":"string","format":"uri","description":"Coevera phone number used as the sender side of the conversation.\n\nRelated Phone record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Phone' for its fields."},"recipient_account":{"type":"string","format":"uri","description":"Account record matched to the recipient phone, when one exists.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"recipient_contact":{"type":"string","format":"uri","description":"Contact record matched to the recipient phone, when one exists.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"phone_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sender phone."},"recipient_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched account."},"recipient_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched contact."},"recipient_phone_number":{"type":"string","example":"string","description":"External phone number of the conversation recipient. Cannot be changed once the conversation has started."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"messages":{"type":"array","items":{"type":"string","format":"uri","description":"Related TextMessage record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TextMessage' for its fields."},"description":"Messages exchanged in the conversation, ordered by send time."},"account_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related TextMessageConversationRelations record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TextMessageConversationRelations' for its fields."},"description":"Accounts linked to this conversation."},"contact_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related TextMessageConversationRelations record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TextMessageConversationRelations' for its fields."},"description":"Contacts linked to this conversation."},"project_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related TextMessageConversationRelations record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TextMessageConversationRelations' for its fields."},"description":"Projects linked to this conversation."},"lead_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related TextMessageConversationRelations record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TextMessageConversationRelations' for its fields."},"description":"Leads linked to this conversation."},"opportunity_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related TextMessageConversationRelations record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TextMessageConversationRelations' for its fields."},"description":"Opportunities linked to this conversation."},"quote_relations":{"type":"array","items":{"type":"string","format":"uri","description":"Related TextMessageConversationRelations record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TextMessageConversationRelations' for its fields."},"description":"Quotes linked to this conversation."}},"required":["is_delete_protected","id","phone","phone_id"]},"createTextMessageConversationInput":{"description":"Field values of a new TextMessageConversation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"phone_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sender phone."},"recipient_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched account."},"recipient_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched contact."},"recipient_phone_number":{"type":"string","example":"string","description":"External phone number of the conversation recipient. Cannot be changed once the conversation has started."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"messages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessage record."}},"description":"Related TextMessage record; see 'createTextMessageInput' for its fields."},"description":"Messages exchanged in the conversation, ordered by send time."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'createTextMessageConversationRelationsInput' for its fields."},"description":"Accounts linked to this conversation."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'createTextMessageConversationRelationsInput' for its fields."},"description":"Contacts linked to this conversation."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'createTextMessageConversationRelationsInput' for its fields."},"description":"Projects linked to this conversation."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'createTextMessageConversationRelationsInput' for its fields."},"description":"Leads linked to this conversation."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'createTextMessageConversationRelationsInput' for its fields."},"description":"Opportunities linked to this conversation."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'createTextMessageConversationRelationsInput' for its fields."},"description":"Quotes linked to this conversation."}},"required":["phone_id"]},"updateTextMessageConversationInput":{"description":"Field values to change on a TextMessageConversation record; fields left out keep their values.","properties":{"phone_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sender phone."},"recipient_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched account."},"recipient_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched contact."},"recipient_phone_number":{"type":"string","example":"string","description":"External phone number of the conversation recipient. Cannot be changed once the conversation has started."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"messages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessage record."}},"description":"Related TextMessage record; see 'updateTextMessageInput' for its fields."},"description":"Messages exchanged in the conversation, ordered by send time."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'updateTextMessageConversationRelationsInput' for its fields."},"description":"Accounts linked to this conversation."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'updateTextMessageConversationRelationsInput' for its fields."},"description":"Contacts linked to this conversation."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'updateTextMessageConversationRelationsInput' for its fields."},"description":"Projects linked to this conversation."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'updateTextMessageConversationRelationsInput' for its fields."},"description":"Leads linked to this conversation."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'updateTextMessageConversationRelationsInput' for its fields."},"description":"Opportunities linked to this conversation."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'updateTextMessageConversationRelationsInput' for its fields."},"description":"Quotes linked to this conversation."}}},"batchTextMessageConversationInput":{"description":"Field values of a TextMessageConversation record to create, or to update when its id is set.","properties":{"phone_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the sender phone."},"recipient_account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched account."},"recipient_contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the matched contact."},"recipient_phone_number":{"type":"string","example":"string","description":"External phone number of the conversation recipient. Cannot be changed once the conversation has started."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"messages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessage record."}},"description":"Related TextMessage record; see 'updateTextMessageInput' for its fields."},"description":"Messages exchanged in the conversation, ordered by send time."},"account_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'updateTextMessageConversationRelationsInput' for its fields."},"description":"Accounts linked to this conversation."},"contact_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'updateTextMessageConversationRelationsInput' for its fields."},"description":"Contacts linked to this conversation."},"project_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'updateTextMessageConversationRelationsInput' for its fields."},"description":"Projects linked to this conversation."},"lead_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'updateTextMessageConversationRelationsInput' for its fields."},"description":"Leads linked to this conversation."},"opportunity_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'updateTextMessageConversationRelationsInput' for its fields."},"description":"Opportunities linked to this conversation."},"quote_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Id of the related TextMessageConversationRelations record."}},"description":"Related TextMessageConversationRelations record; see 'updateTextMessageConversationRelationsInput' for its fields."},"description":"Quotes linked to this conversation."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"TextMessageConversationRelations":{"description":"Link between a text message conversation and a record such as an account, contact, lead or opportunity.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account":{"type":"string","format":"uri","description":"Account the conversation is linked to, or empty when not linked.\n\nRelated Account record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Account' for its fields."},"contact":{"type":"string","format":"uri","description":"Contact the conversation is linked to, or empty when not linked.\n\nRelated Contact record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Contact' for its fields."},"lead":{"type":"string","format":"uri","description":"Lead the conversation is linked to. Set when lead_oppty_id resolves to a Lead.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity the conversation is linked to. Set when lead_oppty_id resolves to an Opportunity.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"project":{"type":"string","format":"uri","description":"Project the conversation is linked to.\n\nRelated Project record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Project' for its fields."},"quote":{"type":"string","format":"uri","description":"Quote the conversation is linked to.\n\nRelated Quote record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Quote' for its fields."},"text_message_conversation":{"type":"string","format":"uri","description":"Conversation this link belongs to.\n\nRelated TextMessageConversation record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TextMessageConversation' for its fields."},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the conversation is linked to, or empty when not linked."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project, or empty when not linked."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote, or empty when not linked."},"text_message_conversation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the text message conversation this link belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id","text_message_conversation","text_message_conversation_id"]},"createTextMessageConversationRelationsInput":{"description":"Field values of a new TextMessageConversationRelations record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the conversation is linked to, or empty when not linked."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project, or empty when not linked."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote, or empty when not linked."},"text_message_conversation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the text message conversation this link belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["text_message_conversation_id"]},"updateTextMessageConversationRelationsInput":{"description":"Field values to change on a TextMessageConversationRelations record; fields left out keep their values.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the conversation is linked to, or empty when not linked."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project, or empty when not linked."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote, or empty when not linked."},"text_message_conversation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the text message conversation this link belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchTextMessageConversationRelationsInput":{"description":"Field values of a TextMessageConversationRelations record to create, or to update when its id is set.","properties":{"account_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked account."},"contact_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked contact."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the conversation is linked to, or empty when not linked."},"project_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked project, or empty when not linked."},"quote_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the linked quote, or empty when not linked."},"text_message_conversation_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the text message conversation this link belongs to."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Timeframe":{"description":"Time a lead or opportunity has spent in a pipeline step.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"lead":{"type":"string","format":"uri","description":"Lead this step-time record belongs to. Set when lead_oppty_id resolves to a Lead.\n\nRelated Lead record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Lead' for its fields."},"oppty":{"type":"string","format":"uri","description":"Opportunity this step-time record belongs to. Set when lead_oppty_id resolves to an Opportunity.\n\nRelated Opportunity record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Opportunity' for its fields."},"step":{"type":"string","format":"uri","description":"Pipeline step the lead/opportunity entered.\n\nRelated Step record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Step' for its fields."},"lead_oppty_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead or opportunity the timeframe belongs to."},"step_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the pipeline step."},"timeframe":{"type":"integer","format":"int32","example":1,"description":"Number of seconds the record spent in the step (cumulative across re-entries)."}},"required":["is_delete_protected","id","step","lead_oppty_id","step_id","timeframe"]},"Translation":{"description":"Translation of a field name, dropdown option or form text into the supported languages.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_type":{"type":"string","format":"uri","description":"Account type the form-level translation applies to.\n\nRelated AccountType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AccountType' for its fields."},"appointment_type":{"type":"string","format":"uri","description":"Appointment type the form-level translation applies to.\n\nRelated AppointmentType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'AppointmentType' for its fields."},"contact_type":{"type":"string","format":"uri","description":"Contact type the form-level translation applies to.\n\nRelated ContactType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ContactType' for its fields."},"data":{"type":"string","format":"uri","description":"Data option (dropdown/radio choice) this row translates. Set when label_type is Data.\n\nRelated Data record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Data' for its fields."},"field":{"type":"string","format":"uri","description":"Field whose name/label this row translates. Set when label_type is Field, FormField, or FormDescription.\n\nRelated Field record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Field' for its fields."},"lead_type":{"type":"string","format":"uri","description":"Lead type the form-level translation applies to.\n\nRelated LeadType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'LeadType' for its fields."},"oppty_product_relation_type":{"type":"string","format":"uri","description":"Opportunity product relation type the form-level translation applies to.\n\nRelated OpptyProductRelationType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpptyProductRelationType' for its fields."},"oppty_type":{"type":"string","format":"uri","description":"Opportunity type the form-level translation applies to.\n\nRelated OpportunityType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'OpportunityType' for its fields."},"product_type":{"type":"string","format":"uri","description":"Product type the form-level translation applies to.\n\nRelated ProductType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProductType' for its fields."},"project_type":{"type":"string","format":"uri","description":"Project type the form-level translation applies to.\n\nRelated ProjectType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'ProjectType' for its fields."},"task_type":{"type":"string","format":"uri","description":"Task type the form-level translation applies to.\n\nRelated TaskType record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'TaskType' for its fields."},"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"appointment_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the translated data option."},"de_de":{"type":"string","example":"string","description":"Translated text in German."},"en_us":{"type":"string","example":"string","description":"Translated text in US English."},"es_es":{"type":"string","example":"string","description":"Translated text in Spanish."},"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the translated field."},"form_type":{"type":"integer","description":"Form of the record type the translation applies to: the edit form, or the lost form of a lead or opportunity type. Required when label_type is FormField or FormDescription.\n\nInteger enum value: 0 - Edit, 1 - Lost","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The record detail (edit) form.","1":"The form shown when a lead or opportunity is marked as lost."}},"label_type":{"type":"integer","description":"Kind of text the row translates: a field name (Field), a dropdown or radio option (Data), or the label or description of a field on the form of one record type (FormField, FormDescription).\n\nInteger enum value: 0 - Field, 1 - Data, 2 - FormField, 3 - FormDescription","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Name of a field.","1":"Option of a dropdown or radio field.","2":"Label of a field on the form of a specific record type.","3":"Description of a field on the form of a specific record type."}},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"oppty_product_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity product relation type."},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type."},"product_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"project_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"pt_br":{"type":"string","example":"string","description":"Translated text in Brazilian Portuguese."},"task_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"is_published":{"type":"boolean","example":false,"description":"True when the translation is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","has_draft","id","label_type"]},"createTranslationInput":{"description":"Field values of a new Translation record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"appointment_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the translated data option."},"de_de":{"type":"string","example":"string","description":"Translated text in German."},"en_us":{"type":"string","example":"string","description":"Translated text in US English."},"es_es":{"type":"string","example":"string","description":"Translated text in Spanish."},"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the translated field."},"form_type":{"type":"integer","description":"Form of the record type the translation applies to: the edit form, or the lost form of a lead or opportunity type. Required when label_type is FormField or FormDescription.\n\nInteger enum value: 0 - Edit, 1 - Lost","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The record detail (edit) form.","1":"The form shown when a lead or opportunity is marked as lost."}},"label_type":{"type":"integer","description":"Kind of text the row translates: a field name (Field), a dropdown or radio option (Data), or the label or description of a field on the form of one record type (FormField, FormDescription).\n\nInteger enum value: 0 - Field, 1 - Data, 2 - FormField, 3 - FormDescription","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Name of a field.","1":"Option of a dropdown or radio field.","2":"Label of a field on the form of a specific record type.","3":"Description of a field on the form of a specific record type."}},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"oppty_product_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity product relation type."},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type."},"product_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"project_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"pt_br":{"type":"string","example":"string","description":"Translated text in Brazilian Portuguese."},"task_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"is_published":{"type":"boolean","example":false,"description":"True when the translation is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["label_type"]},"updateTranslationInput":{"description":"Field values to change on a Translation record; fields left out keep their values.","properties":{"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"appointment_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the translated data option."},"de_de":{"type":"string","example":"string","description":"Translated text in German."},"en_us":{"type":"string","example":"string","description":"Translated text in US English."},"es_es":{"type":"string","example":"string","description":"Translated text in Spanish."},"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the translated field."},"form_type":{"type":"integer","description":"Form of the record type the translation applies to: the edit form, or the lost form of a lead or opportunity type. Required when label_type is FormField or FormDescription.\n\nInteger enum value: 0 - Edit, 1 - Lost","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The record detail (edit) form.","1":"The form shown when a lead or opportunity is marked as lost."}},"label_type":{"type":"integer","description":"Kind of text the row translates: a field name (Field), a dropdown or radio option (Data), or the label or description of a field on the form of one record type (FormField, FormDescription).\n\nInteger enum value: 0 - Field, 1 - Data, 2 - FormField, 3 - FormDescription","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Name of a field.","1":"Option of a dropdown or radio field.","2":"Label of a field on the form of a specific record type.","3":"Description of a field on the form of a specific record type."}},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"oppty_product_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity product relation type."},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type."},"product_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"project_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"pt_br":{"type":"string","example":"string","description":"Translated text in Brazilian Portuguese."},"task_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchTranslationInput":{"description":"Field values of a Translation record to create, or to update when its id is set.","properties":{"account_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the account type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"appointment_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the appointment type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"contact_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the contact type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"data_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the translated data option."},"de_de":{"type":"string","example":"string","description":"Translated text in German."},"en_us":{"type":"string","example":"string","description":"Translated text in US English."},"es_es":{"type":"string","example":"string","description":"Translated text in Spanish."},"field_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the translated field."},"form_type":{"type":"integer","description":"Form of the record type the translation applies to: the edit form, or the lost form of a lead or opportunity type. Required when label_type is FormField or FormDescription.\n\nInteger enum value: 0 - Edit, 1 - Lost","example":0,"enum":[0,1],"x-enumDescriptions":{"0":"The record detail (edit) form.","1":"The form shown when a lead or opportunity is marked as lost."}},"label_type":{"type":"integer","description":"Kind of text the row translates: a field name (Field), a dropdown or radio option (Data), or the label or description of a field on the form of one record type (FormField, FormDescription).\n\nInteger enum value: 0 - Field, 1 - Data, 2 - FormField, 3 - FormDescription","example":0,"enum":[0,1,2,3],"x-enumDescriptions":{"0":"Name of a field.","1":"Option of a dropdown or radio field.","2":"Label of a field on the form of a specific record type.","3":"Description of a field on the form of a specific record type."}},"lead_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the lead type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"oppty_product_relation_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity product relation type."},"oppty_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the opportunity type."},"product_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the product type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"project_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the project type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"pt_br":{"type":"string","example":"string","description":"Translated text in Brazilian Portuguese."},"task_type_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the task type whose form this translation applies to. Set only when label_type is FormField or FormDescription."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Type":{"description":"Data type of fields, defining the kind of value, its validation and whether fields of the type can be filtered, sorted or grouped.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","example":"string","description":"Unique identifier of entity.","readOnly":true},"primitive_type":{"type":"string","example":"blob","enum":["blob","bool","date","datetime","decimal","double","dynamic","enum","int","list","object","string","uuid","tsvector"],"description":"Underlying data type of values of this field type, such as STRING, DECIMAL or DATETIME. Read-only.","readOnly":true,"x-enumDescriptions":{"blob":"Structured payload, such as a JSON document, form definition or geolocation.","bool":"True/false value.","date":"Calendar date without time.","datetime":"Date and time.","decimal":"Exact decimal number, used for amounts, prices and quantities.","double":"Floating-point number, used for example for percentages.","dynamic":"Value whose type depends on context, such as a target value.","enum":"One value, or a combination of flags, from a fixed set of options.","int":"Whole number.","list":"List of values, such as multi-select options, lookup links or attachments.","object":"Composite value, such as a record card, date range or key-value map.","string":"Text.","uuid":"Identifier, typically a reference to another record or option.","tsvector":"Full-text search index of the record; not a user-editable value."}},"validator":{"type":"object","description":"Validation rules applied to values of this type (e.g. max length, regex, allowed enum values), as a JSON document.","readOnly":true},"flag":{"type":"integer","format":"int32","example":1,"description":"What fields of this type can do, as a sum of flags: 1 - can be a custom field, 2 - can have a calculation formula, 4 - can have a default value, 8 - can be shown on mobile, 16 - needs a field mapping, 32 - cannot be placed on forms, 64 - can be read-only on forms, 128 - only on the main form, 256 - can be used in calculation formulas, 512 - must stay on the form, 1024 - searchable in global search, 2048 - needs a calculation formula, 4096 - can be used in advanced calculation formulas.","readOnly":true},"default_value":{"type":"string","example":"string","description":"Default value applied to fields of this type when no value is supplied at create-time. Empty when the type has no default.","readOnly":true},"relation_type":{"type":"integer","description":"Whether fields of this type hold a plain value (NO_RELATION), a reference to one related record (MANY_TO_ONE_SCALAR) or a collection of related records (MANY_TO_MANY_VECTOR).\n\nInteger enum value: 0 - NO_RELATION, 1 - MANY_TO_ONE_SCALAR, 2 - MANY_TO_MANY_VECTOR","example":0,"enum":[0,1,2],"readOnly":true,"x-enumDescriptions":{"0":"Plain value; no related record.","1":"Reference to a single related record.","2":"Collection of related records."}},"container_size":{"type":"integer","format":"int32","example":1,"description":"Maximum length or capacity for fields of this type (e.g. string max-length).","readOnly":true},"is_groupable":{"type":"boolean","example":false,"description":"True when fields of this type can be used as a grouping column in reports.","readOnly":true},"is_filterable":{"type":"boolean","example":false,"description":"True when fields of this type can be used in filters.","readOnly":true},"is_sortable":{"type":"boolean","example":false,"description":"True when fields of this type can be used to sort records.","readOnly":true},"is_selectable":{"type":"boolean","example":false,"description":"True when fields of this type can be selected in queries.","readOnly":true}},"required":["is_delete_protected","id","primitive_type","flag","relation_type","container_size","is_groupable","is_filterable","is_sortable","is_selectable"]},"UnsubscribedPhone":{"description":"Phone number that opted out of receiving text messages.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"phone":{"type":"string","example":"string","description":"Phone number that has unsubscribed from receiving SMS messages, in E.164 format."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","id"]},"createUnsubscribedPhoneInput":{"description":"Field values of a new UnsubscribedPhone record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"phone":{"type":"string","example":"string","description":"Phone number that has unsubscribed from receiving SMS messages, in E.164 format."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"updateUnsubscribedPhoneInput":{"description":"Field values to change on an UnsubscribedPhone record; fields left out keep their values.","properties":{"phone":{"type":"string","example":"string","description":"Phone number that has unsubscribed from receiving SMS messages, in E.164 format."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchUnsubscribedPhoneInput":{"description":"Field values of an UnsubscribedPhone record to create, or to update when its id is set.","properties":{"phone":{"type":"string","example":"string","description":"Phone number that has unsubscribed from receiving SMS messages, in E.164 format."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Webhook":{"description":"Registered webhook urls will be called when subscribed events occur with access level corresponding to the Webhook owner. Recipient has to receive the webhook in 10 seconds and respond with HTTP 200 (2XX) status. On failed delivery it will be retried up to 10 times within 24 hours. If the receiving side will respond with HTTP 410 status, the webhook will be disabled. Webhook is also disabled when we receive HTTP timeout on 10th retry and there was no successful delivery in last 5 days.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"application":{"type":"string","format":"uri","description":"OAuth application that registered this webhook. Set automatically when the webhook is created using OAuth credentials; empty when a team-space API key was used.\n\nRelated Application record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Application' for its fields.","readOnly":true},"client":{"type":"string","format":"uri","description":"Client who defined the Webhook. Only those notifications are sent which this Client has permission to see. If empty, all space notification are send, even for events of private records. Value is automatically set to authenticated user who created the webhook. It is left empty if global team space API Credentials are used.\n\nRelated Client record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Client' for its fields."},"application_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the OAuth application that registered the Webhook.","readOnly":true},"client_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the user who defined the Webhook."},"insecure_ssl":{"type":"boolean","example":false,"description":"If True, remote side ssl certificate will not be validated when delivering notifications."},"options":{"type":"object","description":"Params in REST API format (snake case), to modify the content of the WebHook.\nYou can set \"entity\" options of the main entity on which the event occurs.\nE.g. Account for events like Account.Create, Account.Update, Account.Delete.\nFor events with a secondary related entity you can also options under key \"related_entity\".\nE.g. for Account.LinkedDocument event, the \"expand\" option of CloudObject(Document)\ncan be set under \"related_entity\" key.\nFilter follows REST API conventions:\nhttps://developers.coevera.com/reference/rest/\nIn addition, to REST params, you can conditionally trigger webhook\nonly when specified fields will change. You can use \"on-field-change\" param and provide\na list of api names on which this change will listen. The \"on-field-change\" option is available for Account,\nAppointment, Task, Contact, Opportunity, Lead, Product Line Item, Project, Quote and Custom Entity.\n\nSuppressing Webhooks\nYou can specify list of strings under \"skip_keys\" key in options.\nWhenever you make an API request with header \"Webhook-Skip-Key\"\nequal to any of the specified skip keys,\nthe Webhook will not be triggered. This can prevent a Webhook loop.\n\nExample:\n{\n    \"entity\": {\n        \"Contact\": {\n            \"expand\": [\n                \"primary_account\",\n                \"primary_contact\",\n                \"task_relations.task\"\n            ],\n            \"load-only\": [\n                \"id\",\n                \"primary_account\",\n                \"primary_contact.first_name\",\n                \"task_relations.task\"\n            ],\n            \"filter\": {\n                \"email1\":  [\"test@example.com\", \"test@example.net\"],\n                \"email2\":  \"test@example.com\"\n            },\n            \"filter-op\": {\"email1\":  \"eq\"},  # optional, default operator is eq\n            \"on-field-change\": [\"email1\"]\n        },\n        \"Account\": {\n            \"filter\": {\n                \"owner_id\":  [\"9900cce6-bcd6-412a-bcd1-1904556c949a\"]\n            }\n        }\n    },\n    \"related_entity\": {\"expand\": [\"contact\"], \"load-only\": [\"id\", \"contact\"]},\n    \"skip_keys\": [\"gmail_sync\", \"custom_integration\"],\n    \"chunk_size\": 100, // defines the size of the chunk, default is 100, max is 100.\n    \"chunk_delay\": 300, // each chunk will be delayed by N * chunk_delay seconds, where N is index of chunk, default is 0.\n    \"custom_entity_api_name\": [\"CE_Name1\", \"CE_Name2\"] // in case of triggered custom entity, this will execute webhooks only for specified ones within the list. Default are all custom entity types.\n}"},"signature":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Signature to verify webhook (has to be UUID). When signature is set, then all webhook requests will be signed using HMAC-SHA256. This signature will be used as key and request body as message. Signature will be located in \"WebHook-Signature\" header."},"url":{"type":"string","example":"string","description":"Target URL that webhook event payloads are POSTed to."},"events":{"type":"array","items":{"type":"string","example":"*","enum":["*","Account.*","Account.Create","Account.Delete","Account.DocumentLinked","Account.OwnerChanged","Account.Update","ActivityRelation.*","ActivityRelation.Create","ActivityRelation.Delete","ActivityRelation.Update","Appointment.*","Appointment.Comment","Appointment.Create","Appointment.Delete","Appointment.DocumentLinked","Appointment.OwnerChanged","Appointment.Update","Contact.*","Contact.Create","Contact.Delete","Contact.DocumentLinked","Contact.OwnerChanged","Contact.Update","ContactAccountRelation.*","ContactAccountRelation.Create","ContactAccountRelation.Delete","ContactAccountRelation.Update","Currency.*","Currency.Create","Currency.Delete","Currency.Update","CurrencyExchangeRate.*","CurrencyExchangeRate.Create","CurrencyExchangeRate.Delete","CurrencyExchangeRate.Update","CurrencyExchangeRatesList.*","CurrencyExchangeRatesList.Create","CurrencyExchangeRatesList.Delete","CurrencyExchangeRatesList.Update","CustomEntity.*","CustomEntity.Create","CustomEntity.Delete","CustomEntity.DocumentLinked","CustomEntity.OwnerChanged","CustomEntity.Update","Email.*","Email.Create","Email.Delete","Email.DocumentLinked","Email.Update","Lead.*","Lead.BackToLead","Lead.Create","Lead.Delete","Lead.DocumentLinked","Lead.Lost","Lead.OwnerChanged","Lead.Update","LeadOpptyAccountRelation.*","LeadOpptyAccountRelation.Create","LeadOpptyAccountRelation.Delete","LeadOpptyAccountRelation.Update","LeadOpptyContactRelation.*","LeadOpptyContactRelation.Create","LeadOpptyContactRelation.Delete","LeadOpptyContactRelation.Update","Memo.*","Memo.Comment","Memo.Create","Memo.Delete","Memo.DocumentLinked","Memo.Update","Message.*","Message.Create","Message.Delete","Message.DocumentLinked","Message.Update","Note.*","Note.Create","Note.Delete","Note.Update","Opportunity.*","Opportunity.Create","Opportunity.Delete","Opportunity.DocumentLinked","Opportunity.Lost","Opportunity.Move","Opportunity.OwnerChanged","Opportunity.Qualify","Opportunity.Update","Opportunity.Won","OpptyProductRelation.*","OpptyProductRelation.Create","OpptyProductRelation.Delete","OpptyProductRelation.Update","Product.*","Product.Create","Product.Delete","Product.Update","ProductPriceList.*","ProductPriceList.Create","ProductPriceList.Delete","ProductPriceList.Update","ProductPriceListPrice.*","ProductPriceListPrice.Create","ProductPriceListPrice.Delete","ProductPriceListPrice.Update","Project.*","Project.Create","Project.Delete","Project.DocumentLinked","Project.OwnerChanged","Project.Update","Quote.*","Quote.Create","Quote.Delete","Quote.DocumentLinked","Quote.Lost","Quote.Move","Quote.OwnerChanged","Quote.Update","Quote.Won","QuoteAccountRelation.*","QuoteAccountRelation.Create","QuoteAccountRelation.Delete","QuoteAccountRelation.Update","QuoteContactRelation.*","QuoteContactRelation.Create","QuoteContactRelation.Delete","QuoteContactRelation.Update","Task.*","Task.Comment","Task.Create","Task.Delete","Task.DocumentLinked","Task.OwnerChanged","Task.Update"],"x-enumDescriptions":{"*":"Subscribes to every event of every entity in this list.","Lead.*":"Subscribes to every lead event: LeadCreate, LeadUpdate, LeadDelete, LeadBackToLead, LeadOwnerChanged, LeadDocumentLinked and LeadLost.","Lead.Create":"Fires when a lead is created.","Lead.Update":"Fires when a lead is updated.","Lead.Delete":"Fires when a lead is deleted.","Lead.BackToLead":"Fires when an opportunity is moved back to a lead; the event carries the resulting lead.","Lead.OwnerChanged":"Fires when the owner of a lead changes, including when it is created with an owner other than the user who created it.","Lead.DocumentLinked":"Fires when a document is linked to a lead; the event includes the document as the related entity.","Lead.Lost":"Fires when a lead is archived as lost.","Opportunity.*":"Subscribes to every opportunity event: OpportunityCreate, OpportunityUpdate, OpportunityDelete, OpportunityMove, OpportunityQualify, OpportunityOwnerChanged, OpportunityDocumentLinked, OpportunityWon and OpportunityLost.","Opportunity.Create":"Fires when an opportunity is created.","Opportunity.Update":"Fires when an opportunity is updated.","Opportunity.Delete":"Fires when an opportunity is deleted.","Opportunity.Move":"Fires when an opportunity moves to a different sales step; winning an opportunity also raises this event.","Opportunity.Qualify":"Fires when a lead is qualified into an opportunity; the event carries the new opportunity.","Opportunity.OwnerChanged":"Fires when the owner of an opportunity changes, including when it is created with an owner other than the user who created it.","Opportunity.DocumentLinked":"Fires when a document is linked to an opportunity; the event includes the document as the related entity.","Opportunity.Won":"Fires when an opportunity is created in or moved to the won step of its pipeline.","Opportunity.Lost":"Fires when an opportunity is archived as lost without reaching the won step.","Contact.*":"Subscribes to every contact event: ContactCreate, ContactUpdate, ContactDelete, ContactOwnerChanged and ContactDocumentLinked.","Contact.Create":"Fires when a contact is created.","Contact.Update":"Fires when a contact is updated.","Contact.Delete":"Fires when a contact is deleted.","Contact.OwnerChanged":"Fires when the owner of a contact changes, including when it is created with an owner other than the user who created it.","Contact.DocumentLinked":"Fires when a document is linked to a contact; the event includes the document as the related entity.","Account.*":"Subscribes to every account event: AccountCreate, AccountUpdate, AccountDelete, AccountOwnerChanged and AccountDocumentLinked.","Account.Create":"Fires when an account is created.","Account.Update":"Fires when an account is updated.","Account.Delete":"Fires when an account is deleted.","Account.OwnerChanged":"Fires when the owner of an account changes, including when it is created with an owner other than the user who created it.","Account.DocumentLinked":"Fires when a document is linked to an account; the event includes the document as the related entity.","Task.*":"Subscribes to every task event: TaskCreate, TaskUpdate, TaskDelete, TaskOwnerChanged, TaskDocumentLinked and TaskComment.","Task.Create":"Fires when a task is created.","Task.Update":"Fires when a task is updated.","Task.Delete":"Fires when a task is deleted.","Task.OwnerChanged":"Fires when the owner of a task changes, including when it is created with an owner other than the user who created it.","Task.DocumentLinked":"Fires when a document is linked to a task; the event includes the document as the related entity.","Task.Comment":"Fires when a comment is added to a task.","Appointment.*":"Subscribes to every appointment event: AppointmentCreate, AppointmentUpdate, AppointmentDelete, AppointmentOwnerChanged, AppointmentDocumentLinked and AppointmentComment.","Appointment.Create":"Fires when an appointment is created.","Appointment.Update":"Fires when an appointment is updated.","Appointment.Delete":"Fires when an appointment is deleted.","Appointment.OwnerChanged":"Fires when the owner of an appointment changes, including when it is created with an owner other than the user who created it.","Appointment.DocumentLinked":"Fires when a document is linked to an appointment; the event includes the document as the related entity.","Appointment.Comment":"Fires when a comment is added to an appointment.","Message.*":"Legacy subscription to all message events; memo and email changes are delivered as Memo and Email events instead.","Message.Create":"Legacy event that is no longer raised; use MemoCreate or EmailCreate instead.","Message.Update":"Legacy event that is no longer raised; use MemoUpdate or EmailUpdate instead.","Message.Delete":"Legacy event that is no longer raised; use MemoDelete or EmailDelete instead.","Message.DocumentLinked":"Legacy event that is no longer raised; use MemoDocumentLinked or EmailDocumentLinked instead.","Memo.*":"Subscribes to every memo event: MemoCreate, MemoUpdate, MemoDelete, MemoDocumentLinked and MemoComment.","Memo.Create":"Fires when a memo is created.","Memo.Update":"Fires when a memo is updated.","Memo.Delete":"Fires when a memo is deleted.","Memo.DocumentLinked":"Fires when a document is linked to a memo; the event includes the document as the related entity.","Memo.Comment":"Fires when a comment is added to a memo.","Email.*":"Subscribes to every email event: EmailCreate, EmailUpdate, EmailDelete and EmailDocumentLinked.","Email.Create":"Fires when an email is created.","Email.Update":"Fires when an email is updated.","Email.Delete":"Fires when an email is deleted.","Email.DocumentLinked":"Fires when a document is linked to an email; the event includes the document as the related entity.","OpptyProductRelation.*":"Subscribes to every opportunity product line event: OpptyProductRelationCreate, OpptyProductRelationUpdate and OpptyProductRelationDelete.","OpptyProductRelation.Create":"Fires when a product line of an opportunity is created.","OpptyProductRelation.Update":"Fires when a product line of an opportunity is updated.","OpptyProductRelation.Delete":"Fires when a product line of an opportunity is deleted.","Project.*":"Subscribes to every project event: ProjectCreate, ProjectUpdate, ProjectDelete, ProjectOwnerChanged and ProjectDocumentLinked.","Project.Create":"Fires when a project is created.","Project.Update":"Fires when a project is updated.","Project.Delete":"Fires when a project is deleted.","Project.OwnerChanged":"Fires when the owner of a project changes, including when it is created with an owner other than the user who created it.","Project.DocumentLinked":"Fires when a document is linked to a project; the event includes the document as the related entity.","Quote.*":"Subscribes to every quote event: QuoteCreate, QuoteUpdate, QuoteDelete, QuoteOwnerChanged, QuoteDocumentLinked, QuoteMove, QuoteWon and QuoteLost.","Quote.Create":"Fires when a quote is created.","Quote.Update":"Fires when a quote is updated.","Quote.Delete":"Fires when a quote is deleted.","Quote.OwnerChanged":"Fires when the owner of a quote changes, including when it is created with an owner other than the user who created it.","Quote.DocumentLinked":"Fires when a document is linked to a quote; the event includes the document as the related entity.","Quote.Move":"Fires when a quote moves to a different step of its quote process; winning a quote also raises this event.","Quote.Won":"Fires when a quote is created in or moved to the won (accepted) step of its quote process.","Quote.Lost":"Fires when a quote is archived as lost without reaching the won step.","CustomEntity.*":"Subscribes to every custom entity event: CustomEntityCreate, CustomEntityUpdate, CustomEntityDelete, CustomEntityOwnerChanged and CustomEntityDocumentLinked.","CustomEntity.Create":"Fires when a custom entity record is created.","CustomEntity.Update":"Fires when a custom entity record is updated.","CustomEntity.Delete":"Fires when a custom entity record is deleted.","CustomEntity.OwnerChanged":"Fires when the owner of a custom entity record changes, including when it is created with an owner other than the user who created it.","CustomEntity.DocumentLinked":"Fires when a document is linked to a custom entity record; the event includes the document as the related entity.","ContactAccountRelation.*":"Subscribes to every contact-account link event: ContactAccountRelationCreate, ContactAccountRelationUpdate and ContactAccountRelationDelete.","ContactAccountRelation.Create":"Fires when a contact is linked to an account.","ContactAccountRelation.Update":"Fires when the link between a contact and an account is updated.","ContactAccountRelation.Delete":"Fires when a contact is unlinked from an account.","LeadOpptyAccountRelation.*":"Subscribes to every lead/opportunity account link event: LeadOpptyAccountRelationCreate, LeadOpptyAccountRelationUpdate and LeadOpptyAccountRelationDelete.","LeadOpptyAccountRelation.Create":"Fires when an account is linked to a lead or opportunity.","LeadOpptyAccountRelation.Update":"Fires when the link between an account and a lead or opportunity is updated.","LeadOpptyAccountRelation.Delete":"Fires when an account is unlinked from a lead or opportunity.","LeadOpptyContactRelation.*":"Subscribes to every lead/opportunity contact link event: LeadOpptyContactRelationCreate, LeadOpptyContactRelationUpdate and LeadOpptyContactRelationDelete.","LeadOpptyContactRelation.Create":"Fires when a contact is linked to a lead or opportunity.","LeadOpptyContactRelation.Update":"Fires when the link between a contact and a lead or opportunity is updated.","LeadOpptyContactRelation.Delete":"Fires when a contact is unlinked from a lead or opportunity.","ActivityRelation.*":"Subscribes to every activity link event: ActivityRelationCreate, ActivityRelationUpdate and ActivityRelationDelete.","ActivityRelation.Create":"Fires when a task or appointment is linked to a record.","ActivityRelation.Update":"Fires when the link between a task or appointment and a record is updated.","ActivityRelation.Delete":"Fires when a task or appointment is unlinked from a record.","QuoteAccountRelation.*":"Subscribes to every quote-account link event: QuoteAccountRelationCreate, QuoteAccountRelationUpdate and QuoteAccountRelationDelete.","QuoteAccountRelation.Create":"Fires when an account is linked to a quote.","QuoteAccountRelation.Update":"Fires when the link between an account and a quote is updated.","QuoteAccountRelation.Delete":"Fires when an account is unlinked from a quote.","QuoteContactRelation.*":"Subscribes to every quote-contact link event: QuoteContactRelationCreate, QuoteContactRelationUpdate and QuoteContactRelationDelete.","QuoteContactRelation.Create":"Fires when a contact is linked to a quote.","QuoteContactRelation.Update":"Fires when the link between a contact and a quote is updated.","QuoteContactRelation.Delete":"Fires when a contact is unlinked from a quote.","Product.*":"Subscribes to every product event: ProductCreate, ProductUpdate and ProductDelete.","Product.Create":"Fires when a product is created.","Product.Update":"Fires when a product is updated.","Product.Delete":"Fires when a product is deleted.","Note.*":"Subscribes to every note event: NoteCreate, NoteUpdate and NoteDelete.","Note.Create":"Fires when a note is created.","Note.Update":"Fires when a note is updated.","Note.Delete":"Fires when a note is deleted.","Currency.*":"Subscribes to every currency event: CurrencyCreate, CurrencyUpdate and CurrencyDelete.","Currency.Create":"Fires when a currency is created.","Currency.Update":"Fires when a currency is updated.","Currency.Delete":"Fires when a currency is deleted.","CurrencyExchangeRate.*":"Subscribes to every exchange rate event: CurrencyExchangeRateCreate, CurrencyExchangeRateUpdate and CurrencyExchangeRateDelete.","CurrencyExchangeRate.Create":"Fires when an exchange rate is created.","CurrencyExchangeRate.Update":"Fires when an exchange rate is updated.","CurrencyExchangeRate.Delete":"Fires when an exchange rate is deleted.","CurrencyExchangeRatesList.*":"Subscribes to every exchange rate list event: CurrencyExchangeRatesListCreate, CurrencyExchangeRatesListUpdate and CurrencyExchangeRatesListDelete.","CurrencyExchangeRatesList.Create":"Fires when an exchange rate list is created.","CurrencyExchangeRatesList.Update":"Fires when an exchange rate list is updated.","CurrencyExchangeRatesList.Delete":"Fires when an exchange rate list is deleted.","ProductPriceList.*":"Subscribes to every price list event: ProductPriceListCreate, ProductPriceListUpdate and ProductPriceListDelete.","ProductPriceList.Create":"Fires when a price list is created.","ProductPriceList.Update":"Fires when a price list is updated.","ProductPriceList.Delete":"Fires when a price list is deleted.","ProductPriceListPrice.*":"Subscribes to every price list price event: ProductPriceListPriceCreate, ProductPriceListPriceUpdate and ProductPriceListPriceDelete.","ProductPriceListPrice.Create":"Fires when a product price in a price list is created.","ProductPriceListPrice.Update":"Fires when a product price in a price list is updated.","ProductPriceListPrice.Delete":"Fires when a product price in a price list is deleted."}},"description":"Event types this webhook subscribes to (e.g. Account.Create, Lead.Update). At least one event is required; the webhook fires whenever any subscribed event occurs in the team space."}},"required":["is_delete_protected","id","insecure_ssl","url","events"]},"createWebhookInput":{"description":"Field values of a new Webhook record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"insecure_ssl":{"type":"boolean","example":false,"description":"If True, remote side ssl certificate will not be validated when delivering notifications."},"options":{"type":"object","description":"Params in REST API format (snake case), to modify the content of the WebHook.\nYou can set \"entity\" options of the main entity on which the event occurs.\nE.g. Account for events like Account.Create, Account.Update, Account.Delete.\nFor events with a secondary related entity you can also options under key \"related_entity\".\nE.g. for Account.LinkedDocument event, the \"expand\" option of CloudObject(Document)\ncan be set under \"related_entity\" key.\nFilter follows REST API conventions:\nhttps://developers.coevera.com/reference/rest/\nIn addition, to REST params, you can conditionally trigger webhook\nonly when specified fields will change. You can use \"on-field-change\" param and provide\na list of api names on which this change will listen. The \"on-field-change\" option is available for Account,\nAppointment, Task, Contact, Opportunity, Lead, Product Line Item, Project, Quote and Custom Entity.\n\nSuppressing Webhooks\nYou can specify list of strings under \"skip_keys\" key in options.\nWhenever you make an API request with header \"Webhook-Skip-Key\"\nequal to any of the specified skip keys,\nthe Webhook will not be triggered. This can prevent a Webhook loop.\n\nExample:\n{\n    \"entity\": {\n        \"Contact\": {\n            \"expand\": [\n                \"primary_account\",\n                \"primary_contact\",\n                \"task_relations.task\"\n            ],\n            \"load-only\": [\n                \"id\",\n                \"primary_account\",\n                \"primary_contact.first_name\",\n                \"task_relations.task\"\n            ],\n            \"filter\": {\n                \"email1\":  [\"test@example.com\", \"test@example.net\"],\n                \"email2\":  \"test@example.com\"\n            },\n            \"filter-op\": {\"email1\":  \"eq\"},  # optional, default operator is eq\n            \"on-field-change\": [\"email1\"]\n        },\n        \"Account\": {\n            \"filter\": {\n                \"owner_id\":  [\"9900cce6-bcd6-412a-bcd1-1904556c949a\"]\n            }\n        }\n    },\n    \"related_entity\": {\"expand\": [\"contact\"], \"load-only\": [\"id\", \"contact\"]},\n    \"skip_keys\": [\"gmail_sync\", \"custom_integration\"],\n    \"chunk_size\": 100, // defines the size of the chunk, default is 100, max is 100.\n    \"chunk_delay\": 300, // each chunk will be delayed by N * chunk_delay seconds, where N is index of chunk, default is 0.\n    \"custom_entity_api_name\": [\"CE_Name1\", \"CE_Name2\"] // in case of triggered custom entity, this will execute webhooks only for specified ones within the list. Default are all custom entity types.\n}"},"signature":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Signature to verify webhook (has to be UUID). When signature is set, then all webhook requests will be signed using HMAC-SHA256. This signature will be used as key and request body as message. Signature will be located in \"WebHook-Signature\" header."},"url":{"type":"string","example":"string","description":"Target URL that webhook event payloads are POSTed to."},"events":{"type":"array","items":{"type":"string","example":"*","enum":["*","Account.*","Account.Create","Account.Delete","Account.DocumentLinked","Account.OwnerChanged","Account.Update","ActivityRelation.*","ActivityRelation.Create","ActivityRelation.Delete","ActivityRelation.Update","Appointment.*","Appointment.Comment","Appointment.Create","Appointment.Delete","Appointment.DocumentLinked","Appointment.OwnerChanged","Appointment.Update","Contact.*","Contact.Create","Contact.Delete","Contact.DocumentLinked","Contact.OwnerChanged","Contact.Update","ContactAccountRelation.*","ContactAccountRelation.Create","ContactAccountRelation.Delete","ContactAccountRelation.Update","Currency.*","Currency.Create","Currency.Delete","Currency.Update","CurrencyExchangeRate.*","CurrencyExchangeRate.Create","CurrencyExchangeRate.Delete","CurrencyExchangeRate.Update","CurrencyExchangeRatesList.*","CurrencyExchangeRatesList.Create","CurrencyExchangeRatesList.Delete","CurrencyExchangeRatesList.Update","CustomEntity.*","CustomEntity.Create","CustomEntity.Delete","CustomEntity.DocumentLinked","CustomEntity.OwnerChanged","CustomEntity.Update","Email.*","Email.Create","Email.Delete","Email.DocumentLinked","Email.Update","Lead.*","Lead.BackToLead","Lead.Create","Lead.Delete","Lead.DocumentLinked","Lead.Lost","Lead.OwnerChanged","Lead.Update","LeadOpptyAccountRelation.*","LeadOpptyAccountRelation.Create","LeadOpptyAccountRelation.Delete","LeadOpptyAccountRelation.Update","LeadOpptyContactRelation.*","LeadOpptyContactRelation.Create","LeadOpptyContactRelation.Delete","LeadOpptyContactRelation.Update","Memo.*","Memo.Comment","Memo.Create","Memo.Delete","Memo.DocumentLinked","Memo.Update","Message.*","Message.Create","Message.Delete","Message.DocumentLinked","Message.Update","Note.*","Note.Create","Note.Delete","Note.Update","Opportunity.*","Opportunity.Create","Opportunity.Delete","Opportunity.DocumentLinked","Opportunity.Lost","Opportunity.Move","Opportunity.OwnerChanged","Opportunity.Qualify","Opportunity.Update","Opportunity.Won","OpptyProductRelation.*","OpptyProductRelation.Create","OpptyProductRelation.Delete","OpptyProductRelation.Update","Product.*","Product.Create","Product.Delete","Product.Update","ProductPriceList.*","ProductPriceList.Create","ProductPriceList.Delete","ProductPriceList.Update","ProductPriceListPrice.*","ProductPriceListPrice.Create","ProductPriceListPrice.Delete","ProductPriceListPrice.Update","Project.*","Project.Create","Project.Delete","Project.DocumentLinked","Project.OwnerChanged","Project.Update","Quote.*","Quote.Create","Quote.Delete","Quote.DocumentLinked","Quote.Lost","Quote.Move","Quote.OwnerChanged","Quote.Update","Quote.Won","QuoteAccountRelation.*","QuoteAccountRelation.Create","QuoteAccountRelation.Delete","QuoteAccountRelation.Update","QuoteContactRelation.*","QuoteContactRelation.Create","QuoteContactRelation.Delete","QuoteContactRelation.Update","Task.*","Task.Comment","Task.Create","Task.Delete","Task.DocumentLinked","Task.OwnerChanged","Task.Update"],"x-enumDescriptions":{"*":"Subscribes to every event of every entity in this list.","Lead.*":"Subscribes to every lead event: LeadCreate, LeadUpdate, LeadDelete, LeadBackToLead, LeadOwnerChanged, LeadDocumentLinked and LeadLost.","Lead.Create":"Fires when a lead is created.","Lead.Update":"Fires when a lead is updated.","Lead.Delete":"Fires when a lead is deleted.","Lead.BackToLead":"Fires when an opportunity is moved back to a lead; the event carries the resulting lead.","Lead.OwnerChanged":"Fires when the owner of a lead changes, including when it is created with an owner other than the user who created it.","Lead.DocumentLinked":"Fires when a document is linked to a lead; the event includes the document as the related entity.","Lead.Lost":"Fires when a lead is archived as lost.","Opportunity.*":"Subscribes to every opportunity event: OpportunityCreate, OpportunityUpdate, OpportunityDelete, OpportunityMove, OpportunityQualify, OpportunityOwnerChanged, OpportunityDocumentLinked, OpportunityWon and OpportunityLost.","Opportunity.Create":"Fires when an opportunity is created.","Opportunity.Update":"Fires when an opportunity is updated.","Opportunity.Delete":"Fires when an opportunity is deleted.","Opportunity.Move":"Fires when an opportunity moves to a different sales step; winning an opportunity also raises this event.","Opportunity.Qualify":"Fires when a lead is qualified into an opportunity; the event carries the new opportunity.","Opportunity.OwnerChanged":"Fires when the owner of an opportunity changes, including when it is created with an owner other than the user who created it.","Opportunity.DocumentLinked":"Fires when a document is linked to an opportunity; the event includes the document as the related entity.","Opportunity.Won":"Fires when an opportunity is created in or moved to the won step of its pipeline.","Opportunity.Lost":"Fires when an opportunity is archived as lost without reaching the won step.","Contact.*":"Subscribes to every contact event: ContactCreate, ContactUpdate, ContactDelete, ContactOwnerChanged and ContactDocumentLinked.","Contact.Create":"Fires when a contact is created.","Contact.Update":"Fires when a contact is updated.","Contact.Delete":"Fires when a contact is deleted.","Contact.OwnerChanged":"Fires when the owner of a contact changes, including when it is created with an owner other than the user who created it.","Contact.DocumentLinked":"Fires when a document is linked to a contact; the event includes the document as the related entity.","Account.*":"Subscribes to every account event: AccountCreate, AccountUpdate, AccountDelete, AccountOwnerChanged and AccountDocumentLinked.","Account.Create":"Fires when an account is created.","Account.Update":"Fires when an account is updated.","Account.Delete":"Fires when an account is deleted.","Account.OwnerChanged":"Fires when the owner of an account changes, including when it is created with an owner other than the user who created it.","Account.DocumentLinked":"Fires when a document is linked to an account; the event includes the document as the related entity.","Task.*":"Subscribes to every task event: TaskCreate, TaskUpdate, TaskDelete, TaskOwnerChanged, TaskDocumentLinked and TaskComment.","Task.Create":"Fires when a task is created.","Task.Update":"Fires when a task is updated.","Task.Delete":"Fires when a task is deleted.","Task.OwnerChanged":"Fires when the owner of a task changes, including when it is created with an owner other than the user who created it.","Task.DocumentLinked":"Fires when a document is linked to a task; the event includes the document as the related entity.","Task.Comment":"Fires when a comment is added to a task.","Appointment.*":"Subscribes to every appointment event: AppointmentCreate, AppointmentUpdate, AppointmentDelete, AppointmentOwnerChanged, AppointmentDocumentLinked and AppointmentComment.","Appointment.Create":"Fires when an appointment is created.","Appointment.Update":"Fires when an appointment is updated.","Appointment.Delete":"Fires when an appointment is deleted.","Appointment.OwnerChanged":"Fires when the owner of an appointment changes, including when it is created with an owner other than the user who created it.","Appointment.DocumentLinked":"Fires when a document is linked to an appointment; the event includes the document as the related entity.","Appointment.Comment":"Fires when a comment is added to an appointment.","Message.*":"Legacy subscription to all message events; memo and email changes are delivered as Memo and Email events instead.","Message.Create":"Legacy event that is no longer raised; use MemoCreate or EmailCreate instead.","Message.Update":"Legacy event that is no longer raised; use MemoUpdate or EmailUpdate instead.","Message.Delete":"Legacy event that is no longer raised; use MemoDelete or EmailDelete instead.","Message.DocumentLinked":"Legacy event that is no longer raised; use MemoDocumentLinked or EmailDocumentLinked instead.","Memo.*":"Subscribes to every memo event: MemoCreate, MemoUpdate, MemoDelete, MemoDocumentLinked and MemoComment.","Memo.Create":"Fires when a memo is created.","Memo.Update":"Fires when a memo is updated.","Memo.Delete":"Fires when a memo is deleted.","Memo.DocumentLinked":"Fires when a document is linked to a memo; the event includes the document as the related entity.","Memo.Comment":"Fires when a comment is added to a memo.","Email.*":"Subscribes to every email event: EmailCreate, EmailUpdate, EmailDelete and EmailDocumentLinked.","Email.Create":"Fires when an email is created.","Email.Update":"Fires when an email is updated.","Email.Delete":"Fires when an email is deleted.","Email.DocumentLinked":"Fires when a document is linked to an email; the event includes the document as the related entity.","OpptyProductRelation.*":"Subscribes to every opportunity product line event: OpptyProductRelationCreate, OpptyProductRelationUpdate and OpptyProductRelationDelete.","OpptyProductRelation.Create":"Fires when a product line of an opportunity is created.","OpptyProductRelation.Update":"Fires when a product line of an opportunity is updated.","OpptyProductRelation.Delete":"Fires when a product line of an opportunity is deleted.","Project.*":"Subscribes to every project event: ProjectCreate, ProjectUpdate, ProjectDelete, ProjectOwnerChanged and ProjectDocumentLinked.","Project.Create":"Fires when a project is created.","Project.Update":"Fires when a project is updated.","Project.Delete":"Fires when a project is deleted.","Project.OwnerChanged":"Fires when the owner of a project changes, including when it is created with an owner other than the user who created it.","Project.DocumentLinked":"Fires when a document is linked to a project; the event includes the document as the related entity.","Quote.*":"Subscribes to every quote event: QuoteCreate, QuoteUpdate, QuoteDelete, QuoteOwnerChanged, QuoteDocumentLinked, QuoteMove, QuoteWon and QuoteLost.","Quote.Create":"Fires when a quote is created.","Quote.Update":"Fires when a quote is updated.","Quote.Delete":"Fires when a quote is deleted.","Quote.OwnerChanged":"Fires when the owner of a quote changes, including when it is created with an owner other than the user who created it.","Quote.DocumentLinked":"Fires when a document is linked to a quote; the event includes the document as the related entity.","Quote.Move":"Fires when a quote moves to a different step of its quote process; winning a quote also raises this event.","Quote.Won":"Fires when a quote is created in or moved to the won (accepted) step of its quote process.","Quote.Lost":"Fires when a quote is archived as lost without reaching the won step.","CustomEntity.*":"Subscribes to every custom entity event: CustomEntityCreate, CustomEntityUpdate, CustomEntityDelete, CustomEntityOwnerChanged and CustomEntityDocumentLinked.","CustomEntity.Create":"Fires when a custom entity record is created.","CustomEntity.Update":"Fires when a custom entity record is updated.","CustomEntity.Delete":"Fires when a custom entity record is deleted.","CustomEntity.OwnerChanged":"Fires when the owner of a custom entity record changes, including when it is created with an owner other than the user who created it.","CustomEntity.DocumentLinked":"Fires when a document is linked to a custom entity record; the event includes the document as the related entity.","ContactAccountRelation.*":"Subscribes to every contact-account link event: ContactAccountRelationCreate, ContactAccountRelationUpdate and ContactAccountRelationDelete.","ContactAccountRelation.Create":"Fires when a contact is linked to an account.","ContactAccountRelation.Update":"Fires when the link between a contact and an account is updated.","ContactAccountRelation.Delete":"Fires when a contact is unlinked from an account.","LeadOpptyAccountRelation.*":"Subscribes to every lead/opportunity account link event: LeadOpptyAccountRelationCreate, LeadOpptyAccountRelationUpdate and LeadOpptyAccountRelationDelete.","LeadOpptyAccountRelation.Create":"Fires when an account is linked to a lead or opportunity.","LeadOpptyAccountRelation.Update":"Fires when the link between an account and a lead or opportunity is updated.","LeadOpptyAccountRelation.Delete":"Fires when an account is unlinked from a lead or opportunity.","LeadOpptyContactRelation.*":"Subscribes to every lead/opportunity contact link event: LeadOpptyContactRelationCreate, LeadOpptyContactRelationUpdate and LeadOpptyContactRelationDelete.","LeadOpptyContactRelation.Create":"Fires when a contact is linked to a lead or opportunity.","LeadOpptyContactRelation.Update":"Fires when the link between a contact and a lead or opportunity is updated.","LeadOpptyContactRelation.Delete":"Fires when a contact is unlinked from a lead or opportunity.","ActivityRelation.*":"Subscribes to every activity link event: ActivityRelationCreate, ActivityRelationUpdate and ActivityRelationDelete.","ActivityRelation.Create":"Fires when a task or appointment is linked to a record.","ActivityRelation.Update":"Fires when the link between a task or appointment and a record is updated.","ActivityRelation.Delete":"Fires when a task or appointment is unlinked from a record.","QuoteAccountRelation.*":"Subscribes to every quote-account link event: QuoteAccountRelationCreate, QuoteAccountRelationUpdate and QuoteAccountRelationDelete.","QuoteAccountRelation.Create":"Fires when an account is linked to a quote.","QuoteAccountRelation.Update":"Fires when the link between an account and a quote is updated.","QuoteAccountRelation.Delete":"Fires when an account is unlinked from a quote.","QuoteContactRelation.*":"Subscribes to every quote-contact link event: QuoteContactRelationCreate, QuoteContactRelationUpdate and QuoteContactRelationDelete.","QuoteContactRelation.Create":"Fires when a contact is linked to a quote.","QuoteContactRelation.Update":"Fires when the link between a contact and a quote is updated.","QuoteContactRelation.Delete":"Fires when a contact is unlinked from a quote.","Product.*":"Subscribes to every product event: ProductCreate, ProductUpdate and ProductDelete.","Product.Create":"Fires when a product is created.","Product.Update":"Fires when a product is updated.","Product.Delete":"Fires when a product is deleted.","Note.*":"Subscribes to every note event: NoteCreate, NoteUpdate and NoteDelete.","Note.Create":"Fires when a note is created.","Note.Update":"Fires when a note is updated.","Note.Delete":"Fires when a note is deleted.","Currency.*":"Subscribes to every currency event: CurrencyCreate, CurrencyUpdate and CurrencyDelete.","Currency.Create":"Fires when a currency is created.","Currency.Update":"Fires when a currency is updated.","Currency.Delete":"Fires when a currency is deleted.","CurrencyExchangeRate.*":"Subscribes to every exchange rate event: CurrencyExchangeRateCreate, CurrencyExchangeRateUpdate and CurrencyExchangeRateDelete.","CurrencyExchangeRate.Create":"Fires when an exchange rate is created.","CurrencyExchangeRate.Update":"Fires when an exchange rate is updated.","CurrencyExchangeRate.Delete":"Fires when an exchange rate is deleted.","CurrencyExchangeRatesList.*":"Subscribes to every exchange rate list event: CurrencyExchangeRatesListCreate, CurrencyExchangeRatesListUpdate and CurrencyExchangeRatesListDelete.","CurrencyExchangeRatesList.Create":"Fires when an exchange rate list is created.","CurrencyExchangeRatesList.Update":"Fires when an exchange rate list is updated.","CurrencyExchangeRatesList.Delete":"Fires when an exchange rate list is deleted.","ProductPriceList.*":"Subscribes to every price list event: ProductPriceListCreate, ProductPriceListUpdate and ProductPriceListDelete.","ProductPriceList.Create":"Fires when a price list is created.","ProductPriceList.Update":"Fires when a price list is updated.","ProductPriceList.Delete":"Fires when a price list is deleted.","ProductPriceListPrice.*":"Subscribes to every price list price event: ProductPriceListPriceCreate, ProductPriceListPriceUpdate and ProductPriceListPriceDelete.","ProductPriceListPrice.Create":"Fires when a product price in a price list is created.","ProductPriceListPrice.Update":"Fires when a product price in a price list is updated.","ProductPriceListPrice.Delete":"Fires when a product price in a price list is deleted."}},"description":"Event types this webhook subscribes to (e.g. Account.Create, Lead.Update). At least one event is required; the webhook fires whenever any subscribed event occurs in the team space."}},"required":["insecure_ssl","url","events"]},"updateWebhookInput":{"description":"Field values to change on a Webhook record; fields left out keep their values.","properties":{"insecure_ssl":{"type":"boolean","example":false,"description":"If True, remote side ssl certificate will not be validated when delivering notifications."},"options":{"type":"object","description":"Params in REST API format (snake case), to modify the content of the WebHook.\nYou can set \"entity\" options of the main entity on which the event occurs.\nE.g. Account for events like Account.Create, Account.Update, Account.Delete.\nFor events with a secondary related entity you can also options under key \"related_entity\".\nE.g. for Account.LinkedDocument event, the \"expand\" option of CloudObject(Document)\ncan be set under \"related_entity\" key.\nFilter follows REST API conventions:\nhttps://developers.coevera.com/reference/rest/\nIn addition, to REST params, you can conditionally trigger webhook\nonly when specified fields will change. You can use \"on-field-change\" param and provide\na list of api names on which this change will listen. The \"on-field-change\" option is available for Account,\nAppointment, Task, Contact, Opportunity, Lead, Product Line Item, Project, Quote and Custom Entity.\n\nSuppressing Webhooks\nYou can specify list of strings under \"skip_keys\" key in options.\nWhenever you make an API request with header \"Webhook-Skip-Key\"\nequal to any of the specified skip keys,\nthe Webhook will not be triggered. This can prevent a Webhook loop.\n\nExample:\n{\n    \"entity\": {\n        \"Contact\": {\n            \"expand\": [\n                \"primary_account\",\n                \"primary_contact\",\n                \"task_relations.task\"\n            ],\n            \"load-only\": [\n                \"id\",\n                \"primary_account\",\n                \"primary_contact.first_name\",\n                \"task_relations.task\"\n            ],\n            \"filter\": {\n                \"email1\":  [\"test@example.com\", \"test@example.net\"],\n                \"email2\":  \"test@example.com\"\n            },\n            \"filter-op\": {\"email1\":  \"eq\"},  # optional, default operator is eq\n            \"on-field-change\": [\"email1\"]\n        },\n        \"Account\": {\n            \"filter\": {\n                \"owner_id\":  [\"9900cce6-bcd6-412a-bcd1-1904556c949a\"]\n            }\n        }\n    },\n    \"related_entity\": {\"expand\": [\"contact\"], \"load-only\": [\"id\", \"contact\"]},\n    \"skip_keys\": [\"gmail_sync\", \"custom_integration\"],\n    \"chunk_size\": 100, // defines the size of the chunk, default is 100, max is 100.\n    \"chunk_delay\": 300, // each chunk will be delayed by N * chunk_delay seconds, where N is index of chunk, default is 0.\n    \"custom_entity_api_name\": [\"CE_Name1\", \"CE_Name2\"] // in case of triggered custom entity, this will execute webhooks only for specified ones within the list. Default are all custom entity types.\n}"},"signature":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Signature to verify webhook (has to be UUID). When signature is set, then all webhook requests will be signed using HMAC-SHA256. This signature will be used as key and request body as message. Signature will be located in \"WebHook-Signature\" header."},"url":{"type":"string","example":"string","description":"Target URL that webhook event payloads are POSTed to."},"events":{"type":"array","items":{"type":"string","example":"*","enum":["*","Account.*","Account.Create","Account.Delete","Account.DocumentLinked","Account.OwnerChanged","Account.Update","ActivityRelation.*","ActivityRelation.Create","ActivityRelation.Delete","ActivityRelation.Update","Appointment.*","Appointment.Comment","Appointment.Create","Appointment.Delete","Appointment.DocumentLinked","Appointment.OwnerChanged","Appointment.Update","Contact.*","Contact.Create","Contact.Delete","Contact.DocumentLinked","Contact.OwnerChanged","Contact.Update","ContactAccountRelation.*","ContactAccountRelation.Create","ContactAccountRelation.Delete","ContactAccountRelation.Update","Currency.*","Currency.Create","Currency.Delete","Currency.Update","CurrencyExchangeRate.*","CurrencyExchangeRate.Create","CurrencyExchangeRate.Delete","CurrencyExchangeRate.Update","CurrencyExchangeRatesList.*","CurrencyExchangeRatesList.Create","CurrencyExchangeRatesList.Delete","CurrencyExchangeRatesList.Update","CustomEntity.*","CustomEntity.Create","CustomEntity.Delete","CustomEntity.DocumentLinked","CustomEntity.OwnerChanged","CustomEntity.Update","Email.*","Email.Create","Email.Delete","Email.DocumentLinked","Email.Update","Lead.*","Lead.BackToLead","Lead.Create","Lead.Delete","Lead.DocumentLinked","Lead.Lost","Lead.OwnerChanged","Lead.Update","LeadOpptyAccountRelation.*","LeadOpptyAccountRelation.Create","LeadOpptyAccountRelation.Delete","LeadOpptyAccountRelation.Update","LeadOpptyContactRelation.*","LeadOpptyContactRelation.Create","LeadOpptyContactRelation.Delete","LeadOpptyContactRelation.Update","Memo.*","Memo.Comment","Memo.Create","Memo.Delete","Memo.DocumentLinked","Memo.Update","Message.*","Message.Create","Message.Delete","Message.DocumentLinked","Message.Update","Note.*","Note.Create","Note.Delete","Note.Update","Opportunity.*","Opportunity.Create","Opportunity.Delete","Opportunity.DocumentLinked","Opportunity.Lost","Opportunity.Move","Opportunity.OwnerChanged","Opportunity.Qualify","Opportunity.Update","Opportunity.Won","OpptyProductRelation.*","OpptyProductRelation.Create","OpptyProductRelation.Delete","OpptyProductRelation.Update","Product.*","Product.Create","Product.Delete","Product.Update","ProductPriceList.*","ProductPriceList.Create","ProductPriceList.Delete","ProductPriceList.Update","ProductPriceListPrice.*","ProductPriceListPrice.Create","ProductPriceListPrice.Delete","ProductPriceListPrice.Update","Project.*","Project.Create","Project.Delete","Project.DocumentLinked","Project.OwnerChanged","Project.Update","Quote.*","Quote.Create","Quote.Delete","Quote.DocumentLinked","Quote.Lost","Quote.Move","Quote.OwnerChanged","Quote.Update","Quote.Won","QuoteAccountRelation.*","QuoteAccountRelation.Create","QuoteAccountRelation.Delete","QuoteAccountRelation.Update","QuoteContactRelation.*","QuoteContactRelation.Create","QuoteContactRelation.Delete","QuoteContactRelation.Update","Task.*","Task.Comment","Task.Create","Task.Delete","Task.DocumentLinked","Task.OwnerChanged","Task.Update"],"x-enumDescriptions":{"*":"Subscribes to every event of every entity in this list.","Lead.*":"Subscribes to every lead event: LeadCreate, LeadUpdate, LeadDelete, LeadBackToLead, LeadOwnerChanged, LeadDocumentLinked and LeadLost.","Lead.Create":"Fires when a lead is created.","Lead.Update":"Fires when a lead is updated.","Lead.Delete":"Fires when a lead is deleted.","Lead.BackToLead":"Fires when an opportunity is moved back to a lead; the event carries the resulting lead.","Lead.OwnerChanged":"Fires when the owner of a lead changes, including when it is created with an owner other than the user who created it.","Lead.DocumentLinked":"Fires when a document is linked to a lead; the event includes the document as the related entity.","Lead.Lost":"Fires when a lead is archived as lost.","Opportunity.*":"Subscribes to every opportunity event: OpportunityCreate, OpportunityUpdate, OpportunityDelete, OpportunityMove, OpportunityQualify, OpportunityOwnerChanged, OpportunityDocumentLinked, OpportunityWon and OpportunityLost.","Opportunity.Create":"Fires when an opportunity is created.","Opportunity.Update":"Fires when an opportunity is updated.","Opportunity.Delete":"Fires when an opportunity is deleted.","Opportunity.Move":"Fires when an opportunity moves to a different sales step; winning an opportunity also raises this event.","Opportunity.Qualify":"Fires when a lead is qualified into an opportunity; the event carries the new opportunity.","Opportunity.OwnerChanged":"Fires when the owner of an opportunity changes, including when it is created with an owner other than the user who created it.","Opportunity.DocumentLinked":"Fires when a document is linked to an opportunity; the event includes the document as the related entity.","Opportunity.Won":"Fires when an opportunity is created in or moved to the won step of its pipeline.","Opportunity.Lost":"Fires when an opportunity is archived as lost without reaching the won step.","Contact.*":"Subscribes to every contact event: ContactCreate, ContactUpdate, ContactDelete, ContactOwnerChanged and ContactDocumentLinked.","Contact.Create":"Fires when a contact is created.","Contact.Update":"Fires when a contact is updated.","Contact.Delete":"Fires when a contact is deleted.","Contact.OwnerChanged":"Fires when the owner of a contact changes, including when it is created with an owner other than the user who created it.","Contact.DocumentLinked":"Fires when a document is linked to a contact; the event includes the document as the related entity.","Account.*":"Subscribes to every account event: AccountCreate, AccountUpdate, AccountDelete, AccountOwnerChanged and AccountDocumentLinked.","Account.Create":"Fires when an account is created.","Account.Update":"Fires when an account is updated.","Account.Delete":"Fires when an account is deleted.","Account.OwnerChanged":"Fires when the owner of an account changes, including when it is created with an owner other than the user who created it.","Account.DocumentLinked":"Fires when a document is linked to an account; the event includes the document as the related entity.","Task.*":"Subscribes to every task event: TaskCreate, TaskUpdate, TaskDelete, TaskOwnerChanged, TaskDocumentLinked and TaskComment.","Task.Create":"Fires when a task is created.","Task.Update":"Fires when a task is updated.","Task.Delete":"Fires when a task is deleted.","Task.OwnerChanged":"Fires when the owner of a task changes, including when it is created with an owner other than the user who created it.","Task.DocumentLinked":"Fires when a document is linked to a task; the event includes the document as the related entity.","Task.Comment":"Fires when a comment is added to a task.","Appointment.*":"Subscribes to every appointment event: AppointmentCreate, AppointmentUpdate, AppointmentDelete, AppointmentOwnerChanged, AppointmentDocumentLinked and AppointmentComment.","Appointment.Create":"Fires when an appointment is created.","Appointment.Update":"Fires when an appointment is updated.","Appointment.Delete":"Fires when an appointment is deleted.","Appointment.OwnerChanged":"Fires when the owner of an appointment changes, including when it is created with an owner other than the user who created it.","Appointment.DocumentLinked":"Fires when a document is linked to an appointment; the event includes the document as the related entity.","Appointment.Comment":"Fires when a comment is added to an appointment.","Message.*":"Legacy subscription to all message events; memo and email changes are delivered as Memo and Email events instead.","Message.Create":"Legacy event that is no longer raised; use MemoCreate or EmailCreate instead.","Message.Update":"Legacy event that is no longer raised; use MemoUpdate or EmailUpdate instead.","Message.Delete":"Legacy event that is no longer raised; use MemoDelete or EmailDelete instead.","Message.DocumentLinked":"Legacy event that is no longer raised; use MemoDocumentLinked or EmailDocumentLinked instead.","Memo.*":"Subscribes to every memo event: MemoCreate, MemoUpdate, MemoDelete, MemoDocumentLinked and MemoComment.","Memo.Create":"Fires when a memo is created.","Memo.Update":"Fires when a memo is updated.","Memo.Delete":"Fires when a memo is deleted.","Memo.DocumentLinked":"Fires when a document is linked to a memo; the event includes the document as the related entity.","Memo.Comment":"Fires when a comment is added to a memo.","Email.*":"Subscribes to every email event: EmailCreate, EmailUpdate, EmailDelete and EmailDocumentLinked.","Email.Create":"Fires when an email is created.","Email.Update":"Fires when an email is updated.","Email.Delete":"Fires when an email is deleted.","Email.DocumentLinked":"Fires when a document is linked to an email; the event includes the document as the related entity.","OpptyProductRelation.*":"Subscribes to every opportunity product line event: OpptyProductRelationCreate, OpptyProductRelationUpdate and OpptyProductRelationDelete.","OpptyProductRelation.Create":"Fires when a product line of an opportunity is created.","OpptyProductRelation.Update":"Fires when a product line of an opportunity is updated.","OpptyProductRelation.Delete":"Fires when a product line of an opportunity is deleted.","Project.*":"Subscribes to every project event: ProjectCreate, ProjectUpdate, ProjectDelete, ProjectOwnerChanged and ProjectDocumentLinked.","Project.Create":"Fires when a project is created.","Project.Update":"Fires when a project is updated.","Project.Delete":"Fires when a project is deleted.","Project.OwnerChanged":"Fires when the owner of a project changes, including when it is created with an owner other than the user who created it.","Project.DocumentLinked":"Fires when a document is linked to a project; the event includes the document as the related entity.","Quote.*":"Subscribes to every quote event: QuoteCreate, QuoteUpdate, QuoteDelete, QuoteOwnerChanged, QuoteDocumentLinked, QuoteMove, QuoteWon and QuoteLost.","Quote.Create":"Fires when a quote is created.","Quote.Update":"Fires when a quote is updated.","Quote.Delete":"Fires when a quote is deleted.","Quote.OwnerChanged":"Fires when the owner of a quote changes, including when it is created with an owner other than the user who created it.","Quote.DocumentLinked":"Fires when a document is linked to a quote; the event includes the document as the related entity.","Quote.Move":"Fires when a quote moves to a different step of its quote process; winning a quote also raises this event.","Quote.Won":"Fires when a quote is created in or moved to the won (accepted) step of its quote process.","Quote.Lost":"Fires when a quote is archived as lost without reaching the won step.","CustomEntity.*":"Subscribes to every custom entity event: CustomEntityCreate, CustomEntityUpdate, CustomEntityDelete, CustomEntityOwnerChanged and CustomEntityDocumentLinked.","CustomEntity.Create":"Fires when a custom entity record is created.","CustomEntity.Update":"Fires when a custom entity record is updated.","CustomEntity.Delete":"Fires when a custom entity record is deleted.","CustomEntity.OwnerChanged":"Fires when the owner of a custom entity record changes, including when it is created with an owner other than the user who created it.","CustomEntity.DocumentLinked":"Fires when a document is linked to a custom entity record; the event includes the document as the related entity.","ContactAccountRelation.*":"Subscribes to every contact-account link event: ContactAccountRelationCreate, ContactAccountRelationUpdate and ContactAccountRelationDelete.","ContactAccountRelation.Create":"Fires when a contact is linked to an account.","ContactAccountRelation.Update":"Fires when the link between a contact and an account is updated.","ContactAccountRelation.Delete":"Fires when a contact is unlinked from an account.","LeadOpptyAccountRelation.*":"Subscribes to every lead/opportunity account link event: LeadOpptyAccountRelationCreate, LeadOpptyAccountRelationUpdate and LeadOpptyAccountRelationDelete.","LeadOpptyAccountRelation.Create":"Fires when an account is linked to a lead or opportunity.","LeadOpptyAccountRelation.Update":"Fires when the link between an account and a lead or opportunity is updated.","LeadOpptyAccountRelation.Delete":"Fires when an account is unlinked from a lead or opportunity.","LeadOpptyContactRelation.*":"Subscribes to every lead/opportunity contact link event: LeadOpptyContactRelationCreate, LeadOpptyContactRelationUpdate and LeadOpptyContactRelationDelete.","LeadOpptyContactRelation.Create":"Fires when a contact is linked to a lead or opportunity.","LeadOpptyContactRelation.Update":"Fires when the link between a contact and a lead or opportunity is updated.","LeadOpptyContactRelation.Delete":"Fires when a contact is unlinked from a lead or opportunity.","ActivityRelation.*":"Subscribes to every activity link event: ActivityRelationCreate, ActivityRelationUpdate and ActivityRelationDelete.","ActivityRelation.Create":"Fires when a task or appointment is linked to a record.","ActivityRelation.Update":"Fires when the link between a task or appointment and a record is updated.","ActivityRelation.Delete":"Fires when a task or appointment is unlinked from a record.","QuoteAccountRelation.*":"Subscribes to every quote-account link event: QuoteAccountRelationCreate, QuoteAccountRelationUpdate and QuoteAccountRelationDelete.","QuoteAccountRelation.Create":"Fires when an account is linked to a quote.","QuoteAccountRelation.Update":"Fires when the link between an account and a quote is updated.","QuoteAccountRelation.Delete":"Fires when an account is unlinked from a quote.","QuoteContactRelation.*":"Subscribes to every quote-contact link event: QuoteContactRelationCreate, QuoteContactRelationUpdate and QuoteContactRelationDelete.","QuoteContactRelation.Create":"Fires when a contact is linked to a quote.","QuoteContactRelation.Update":"Fires when the link between a contact and a quote is updated.","QuoteContactRelation.Delete":"Fires when a contact is unlinked from a quote.","Product.*":"Subscribes to every product event: ProductCreate, ProductUpdate and ProductDelete.","Product.Create":"Fires when a product is created.","Product.Update":"Fires when a product is updated.","Product.Delete":"Fires when a product is deleted.","Note.*":"Subscribes to every note event: NoteCreate, NoteUpdate and NoteDelete.","Note.Create":"Fires when a note is created.","Note.Update":"Fires when a note is updated.","Note.Delete":"Fires when a note is deleted.","Currency.*":"Subscribes to every currency event: CurrencyCreate, CurrencyUpdate and CurrencyDelete.","Currency.Create":"Fires when a currency is created.","Currency.Update":"Fires when a currency is updated.","Currency.Delete":"Fires when a currency is deleted.","CurrencyExchangeRate.*":"Subscribes to every exchange rate event: CurrencyExchangeRateCreate, CurrencyExchangeRateUpdate and CurrencyExchangeRateDelete.","CurrencyExchangeRate.Create":"Fires when an exchange rate is created.","CurrencyExchangeRate.Update":"Fires when an exchange rate is updated.","CurrencyExchangeRate.Delete":"Fires when an exchange rate is deleted.","CurrencyExchangeRatesList.*":"Subscribes to every exchange rate list event: CurrencyExchangeRatesListCreate, CurrencyExchangeRatesListUpdate and CurrencyExchangeRatesListDelete.","CurrencyExchangeRatesList.Create":"Fires when an exchange rate list is created.","CurrencyExchangeRatesList.Update":"Fires when an exchange rate list is updated.","CurrencyExchangeRatesList.Delete":"Fires when an exchange rate list is deleted.","ProductPriceList.*":"Subscribes to every price list event: ProductPriceListCreate, ProductPriceListUpdate and ProductPriceListDelete.","ProductPriceList.Create":"Fires when a price list is created.","ProductPriceList.Update":"Fires when a price list is updated.","ProductPriceList.Delete":"Fires when a price list is deleted.","ProductPriceListPrice.*":"Subscribes to every price list price event: ProductPriceListPriceCreate, ProductPriceListPriceUpdate and ProductPriceListPriceDelete.","ProductPriceListPrice.Create":"Fires when a product price in a price list is created.","ProductPriceListPrice.Update":"Fires when a product price in a price list is updated.","ProductPriceListPrice.Delete":"Fires when a product price in a price list is deleted."}},"description":"Event types this webhook subscribes to (e.g. Account.Create, Lead.Update). At least one event is required; the webhook fires whenever any subscribed event occurs in the team space."}}},"batchWebhookInput":{"description":"Field values of a Webhook record to create, or to update when its id is set.","properties":{"insecure_ssl":{"type":"boolean","example":false,"description":"If True, remote side ssl certificate will not be validated when delivering notifications."},"options":{"type":"object","description":"Params in REST API format (snake case), to modify the content of the WebHook.\nYou can set \"entity\" options of the main entity on which the event occurs.\nE.g. Account for events like Account.Create, Account.Update, Account.Delete.\nFor events with a secondary related entity you can also options under key \"related_entity\".\nE.g. for Account.LinkedDocument event, the \"expand\" option of CloudObject(Document)\ncan be set under \"related_entity\" key.\nFilter follows REST API conventions:\nhttps://developers.coevera.com/reference/rest/\nIn addition, to REST params, you can conditionally trigger webhook\nonly when specified fields will change. You can use \"on-field-change\" param and provide\na list of api names on which this change will listen. The \"on-field-change\" option is available for Account,\nAppointment, Task, Contact, Opportunity, Lead, Product Line Item, Project, Quote and Custom Entity.\n\nSuppressing Webhooks\nYou can specify list of strings under \"skip_keys\" key in options.\nWhenever you make an API request with header \"Webhook-Skip-Key\"\nequal to any of the specified skip keys,\nthe Webhook will not be triggered. This can prevent a Webhook loop.\n\nExample:\n{\n    \"entity\": {\n        \"Contact\": {\n            \"expand\": [\n                \"primary_account\",\n                \"primary_contact\",\n                \"task_relations.task\"\n            ],\n            \"load-only\": [\n                \"id\",\n                \"primary_account\",\n                \"primary_contact.first_name\",\n                \"task_relations.task\"\n            ],\n            \"filter\": {\n                \"email1\":  [\"test@example.com\", \"test@example.net\"],\n                \"email2\":  \"test@example.com\"\n            },\n            \"filter-op\": {\"email1\":  \"eq\"},  # optional, default operator is eq\n            \"on-field-change\": [\"email1\"]\n        },\n        \"Account\": {\n            \"filter\": {\n                \"owner_id\":  [\"9900cce6-bcd6-412a-bcd1-1904556c949a\"]\n            }\n        }\n    },\n    \"related_entity\": {\"expand\": [\"contact\"], \"load-only\": [\"id\", \"contact\"]},\n    \"skip_keys\": [\"gmail_sync\", \"custom_integration\"],\n    \"chunk_size\": 100, // defines the size of the chunk, default is 100, max is 100.\n    \"chunk_delay\": 300, // each chunk will be delayed by N * chunk_delay seconds, where N is index of chunk, default is 0.\n    \"custom_entity_api_name\": [\"CE_Name1\", \"CE_Name2\"] // in case of triggered custom entity, this will execute webhooks only for specified ones within the list. Default are all custom entity types.\n}"},"signature":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Signature to verify webhook (has to be UUID). When signature is set, then all webhook requests will be signed using HMAC-SHA256. This signature will be used as key and request body as message. Signature will be located in \"WebHook-Signature\" header."},"url":{"type":"string","example":"string","description":"Target URL that webhook event payloads are POSTed to."},"events":{"type":"array","items":{"type":"string","example":"*","enum":["*","Account.*","Account.Create","Account.Delete","Account.DocumentLinked","Account.OwnerChanged","Account.Update","ActivityRelation.*","ActivityRelation.Create","ActivityRelation.Delete","ActivityRelation.Update","Appointment.*","Appointment.Comment","Appointment.Create","Appointment.Delete","Appointment.DocumentLinked","Appointment.OwnerChanged","Appointment.Update","Contact.*","Contact.Create","Contact.Delete","Contact.DocumentLinked","Contact.OwnerChanged","Contact.Update","ContactAccountRelation.*","ContactAccountRelation.Create","ContactAccountRelation.Delete","ContactAccountRelation.Update","Currency.*","Currency.Create","Currency.Delete","Currency.Update","CurrencyExchangeRate.*","CurrencyExchangeRate.Create","CurrencyExchangeRate.Delete","CurrencyExchangeRate.Update","CurrencyExchangeRatesList.*","CurrencyExchangeRatesList.Create","CurrencyExchangeRatesList.Delete","CurrencyExchangeRatesList.Update","CustomEntity.*","CustomEntity.Create","CustomEntity.Delete","CustomEntity.DocumentLinked","CustomEntity.OwnerChanged","CustomEntity.Update","Email.*","Email.Create","Email.Delete","Email.DocumentLinked","Email.Update","Lead.*","Lead.BackToLead","Lead.Create","Lead.Delete","Lead.DocumentLinked","Lead.Lost","Lead.OwnerChanged","Lead.Update","LeadOpptyAccountRelation.*","LeadOpptyAccountRelation.Create","LeadOpptyAccountRelation.Delete","LeadOpptyAccountRelation.Update","LeadOpptyContactRelation.*","LeadOpptyContactRelation.Create","LeadOpptyContactRelation.Delete","LeadOpptyContactRelation.Update","Memo.*","Memo.Comment","Memo.Create","Memo.Delete","Memo.DocumentLinked","Memo.Update","Message.*","Message.Create","Message.Delete","Message.DocumentLinked","Message.Update","Note.*","Note.Create","Note.Delete","Note.Update","Opportunity.*","Opportunity.Create","Opportunity.Delete","Opportunity.DocumentLinked","Opportunity.Lost","Opportunity.Move","Opportunity.OwnerChanged","Opportunity.Qualify","Opportunity.Update","Opportunity.Won","OpptyProductRelation.*","OpptyProductRelation.Create","OpptyProductRelation.Delete","OpptyProductRelation.Update","Product.*","Product.Create","Product.Delete","Product.Update","ProductPriceList.*","ProductPriceList.Create","ProductPriceList.Delete","ProductPriceList.Update","ProductPriceListPrice.*","ProductPriceListPrice.Create","ProductPriceListPrice.Delete","ProductPriceListPrice.Update","Project.*","Project.Create","Project.Delete","Project.DocumentLinked","Project.OwnerChanged","Project.Update","Quote.*","Quote.Create","Quote.Delete","Quote.DocumentLinked","Quote.Lost","Quote.Move","Quote.OwnerChanged","Quote.Update","Quote.Won","QuoteAccountRelation.*","QuoteAccountRelation.Create","QuoteAccountRelation.Delete","QuoteAccountRelation.Update","QuoteContactRelation.*","QuoteContactRelation.Create","QuoteContactRelation.Delete","QuoteContactRelation.Update","Task.*","Task.Comment","Task.Create","Task.Delete","Task.DocumentLinked","Task.OwnerChanged","Task.Update"],"x-enumDescriptions":{"*":"Subscribes to every event of every entity in this list.","Lead.*":"Subscribes to every lead event: LeadCreate, LeadUpdate, LeadDelete, LeadBackToLead, LeadOwnerChanged, LeadDocumentLinked and LeadLost.","Lead.Create":"Fires when a lead is created.","Lead.Update":"Fires when a lead is updated.","Lead.Delete":"Fires when a lead is deleted.","Lead.BackToLead":"Fires when an opportunity is moved back to a lead; the event carries the resulting lead.","Lead.OwnerChanged":"Fires when the owner of a lead changes, including when it is created with an owner other than the user who created it.","Lead.DocumentLinked":"Fires when a document is linked to a lead; the event includes the document as the related entity.","Lead.Lost":"Fires when a lead is archived as lost.","Opportunity.*":"Subscribes to every opportunity event: OpportunityCreate, OpportunityUpdate, OpportunityDelete, OpportunityMove, OpportunityQualify, OpportunityOwnerChanged, OpportunityDocumentLinked, OpportunityWon and OpportunityLost.","Opportunity.Create":"Fires when an opportunity is created.","Opportunity.Update":"Fires when an opportunity is updated.","Opportunity.Delete":"Fires when an opportunity is deleted.","Opportunity.Move":"Fires when an opportunity moves to a different sales step; winning an opportunity also raises this event.","Opportunity.Qualify":"Fires when a lead is qualified into an opportunity; the event carries the new opportunity.","Opportunity.OwnerChanged":"Fires when the owner of an opportunity changes, including when it is created with an owner other than the user who created it.","Opportunity.DocumentLinked":"Fires when a document is linked to an opportunity; the event includes the document as the related entity.","Opportunity.Won":"Fires when an opportunity is created in or moved to the won step of its pipeline.","Opportunity.Lost":"Fires when an opportunity is archived as lost without reaching the won step.","Contact.*":"Subscribes to every contact event: ContactCreate, ContactUpdate, ContactDelete, ContactOwnerChanged and ContactDocumentLinked.","Contact.Create":"Fires when a contact is created.","Contact.Update":"Fires when a contact is updated.","Contact.Delete":"Fires when a contact is deleted.","Contact.OwnerChanged":"Fires when the owner of a contact changes, including when it is created with an owner other than the user who created it.","Contact.DocumentLinked":"Fires when a document is linked to a contact; the event includes the document as the related entity.","Account.*":"Subscribes to every account event: AccountCreate, AccountUpdate, AccountDelete, AccountOwnerChanged and AccountDocumentLinked.","Account.Create":"Fires when an account is created.","Account.Update":"Fires when an account is updated.","Account.Delete":"Fires when an account is deleted.","Account.OwnerChanged":"Fires when the owner of an account changes, including when it is created with an owner other than the user who created it.","Account.DocumentLinked":"Fires when a document is linked to an account; the event includes the document as the related entity.","Task.*":"Subscribes to every task event: TaskCreate, TaskUpdate, TaskDelete, TaskOwnerChanged, TaskDocumentLinked and TaskComment.","Task.Create":"Fires when a task is created.","Task.Update":"Fires when a task is updated.","Task.Delete":"Fires when a task is deleted.","Task.OwnerChanged":"Fires when the owner of a task changes, including when it is created with an owner other than the user who created it.","Task.DocumentLinked":"Fires when a document is linked to a task; the event includes the document as the related entity.","Task.Comment":"Fires when a comment is added to a task.","Appointment.*":"Subscribes to every appointment event: AppointmentCreate, AppointmentUpdate, AppointmentDelete, AppointmentOwnerChanged, AppointmentDocumentLinked and AppointmentComment.","Appointment.Create":"Fires when an appointment is created.","Appointment.Update":"Fires when an appointment is updated.","Appointment.Delete":"Fires when an appointment is deleted.","Appointment.OwnerChanged":"Fires when the owner of an appointment changes, including when it is created with an owner other than the user who created it.","Appointment.DocumentLinked":"Fires when a document is linked to an appointment; the event includes the document as the related entity.","Appointment.Comment":"Fires when a comment is added to an appointment.","Message.*":"Legacy subscription to all message events; memo and email changes are delivered as Memo and Email events instead.","Message.Create":"Legacy event that is no longer raised; use MemoCreate or EmailCreate instead.","Message.Update":"Legacy event that is no longer raised; use MemoUpdate or EmailUpdate instead.","Message.Delete":"Legacy event that is no longer raised; use MemoDelete or EmailDelete instead.","Message.DocumentLinked":"Legacy event that is no longer raised; use MemoDocumentLinked or EmailDocumentLinked instead.","Memo.*":"Subscribes to every memo event: MemoCreate, MemoUpdate, MemoDelete, MemoDocumentLinked and MemoComment.","Memo.Create":"Fires when a memo is created.","Memo.Update":"Fires when a memo is updated.","Memo.Delete":"Fires when a memo is deleted.","Memo.DocumentLinked":"Fires when a document is linked to a memo; the event includes the document as the related entity.","Memo.Comment":"Fires when a comment is added to a memo.","Email.*":"Subscribes to every email event: EmailCreate, EmailUpdate, EmailDelete and EmailDocumentLinked.","Email.Create":"Fires when an email is created.","Email.Update":"Fires when an email is updated.","Email.Delete":"Fires when an email is deleted.","Email.DocumentLinked":"Fires when a document is linked to an email; the event includes the document as the related entity.","OpptyProductRelation.*":"Subscribes to every opportunity product line event: OpptyProductRelationCreate, OpptyProductRelationUpdate and OpptyProductRelationDelete.","OpptyProductRelation.Create":"Fires when a product line of an opportunity is created.","OpptyProductRelation.Update":"Fires when a product line of an opportunity is updated.","OpptyProductRelation.Delete":"Fires when a product line of an opportunity is deleted.","Project.*":"Subscribes to every project event: ProjectCreate, ProjectUpdate, ProjectDelete, ProjectOwnerChanged and ProjectDocumentLinked.","Project.Create":"Fires when a project is created.","Project.Update":"Fires when a project is updated.","Project.Delete":"Fires when a project is deleted.","Project.OwnerChanged":"Fires when the owner of a project changes, including when it is created with an owner other than the user who created it.","Project.DocumentLinked":"Fires when a document is linked to a project; the event includes the document as the related entity.","Quote.*":"Subscribes to every quote event: QuoteCreate, QuoteUpdate, QuoteDelete, QuoteOwnerChanged, QuoteDocumentLinked, QuoteMove, QuoteWon and QuoteLost.","Quote.Create":"Fires when a quote is created.","Quote.Update":"Fires when a quote is updated.","Quote.Delete":"Fires when a quote is deleted.","Quote.OwnerChanged":"Fires when the owner of a quote changes, including when it is created with an owner other than the user who created it.","Quote.DocumentLinked":"Fires when a document is linked to a quote; the event includes the document as the related entity.","Quote.Move":"Fires when a quote moves to a different step of its quote process; winning a quote also raises this event.","Quote.Won":"Fires when a quote is created in or moved to the won (accepted) step of its quote process.","Quote.Lost":"Fires when a quote is archived as lost without reaching the won step.","CustomEntity.*":"Subscribes to every custom entity event: CustomEntityCreate, CustomEntityUpdate, CustomEntityDelete, CustomEntityOwnerChanged and CustomEntityDocumentLinked.","CustomEntity.Create":"Fires when a custom entity record is created.","CustomEntity.Update":"Fires when a custom entity record is updated.","CustomEntity.Delete":"Fires when a custom entity record is deleted.","CustomEntity.OwnerChanged":"Fires when the owner of a custom entity record changes, including when it is created with an owner other than the user who created it.","CustomEntity.DocumentLinked":"Fires when a document is linked to a custom entity record; the event includes the document as the related entity.","ContactAccountRelation.*":"Subscribes to every contact-account link event: ContactAccountRelationCreate, ContactAccountRelationUpdate and ContactAccountRelationDelete.","ContactAccountRelation.Create":"Fires when a contact is linked to an account.","ContactAccountRelation.Update":"Fires when the link between a contact and an account is updated.","ContactAccountRelation.Delete":"Fires when a contact is unlinked from an account.","LeadOpptyAccountRelation.*":"Subscribes to every lead/opportunity account link event: LeadOpptyAccountRelationCreate, LeadOpptyAccountRelationUpdate and LeadOpptyAccountRelationDelete.","LeadOpptyAccountRelation.Create":"Fires when an account is linked to a lead or opportunity.","LeadOpptyAccountRelation.Update":"Fires when the link between an account and a lead or opportunity is updated.","LeadOpptyAccountRelation.Delete":"Fires when an account is unlinked from a lead or opportunity.","LeadOpptyContactRelation.*":"Subscribes to every lead/opportunity contact link event: LeadOpptyContactRelationCreate, LeadOpptyContactRelationUpdate and LeadOpptyContactRelationDelete.","LeadOpptyContactRelation.Create":"Fires when a contact is linked to a lead or opportunity.","LeadOpptyContactRelation.Update":"Fires when the link between a contact and a lead or opportunity is updated.","LeadOpptyContactRelation.Delete":"Fires when a contact is unlinked from a lead or opportunity.","ActivityRelation.*":"Subscribes to every activity link event: ActivityRelationCreate, ActivityRelationUpdate and ActivityRelationDelete.","ActivityRelation.Create":"Fires when a task or appointment is linked to a record.","ActivityRelation.Update":"Fires when the link between a task or appointment and a record is updated.","ActivityRelation.Delete":"Fires when a task or appointment is unlinked from a record.","QuoteAccountRelation.*":"Subscribes to every quote-account link event: QuoteAccountRelationCreate, QuoteAccountRelationUpdate and QuoteAccountRelationDelete.","QuoteAccountRelation.Create":"Fires when an account is linked to a quote.","QuoteAccountRelation.Update":"Fires when the link between an account and a quote is updated.","QuoteAccountRelation.Delete":"Fires when an account is unlinked from a quote.","QuoteContactRelation.*":"Subscribes to every quote-contact link event: QuoteContactRelationCreate, QuoteContactRelationUpdate and QuoteContactRelationDelete.","QuoteContactRelation.Create":"Fires when a contact is linked to a quote.","QuoteContactRelation.Update":"Fires when the link between a contact and a quote is updated.","QuoteContactRelation.Delete":"Fires when a contact is unlinked from a quote.","Product.*":"Subscribes to every product event: ProductCreate, ProductUpdate and ProductDelete.","Product.Create":"Fires when a product is created.","Product.Update":"Fires when a product is updated.","Product.Delete":"Fires when a product is deleted.","Note.*":"Subscribes to every note event: NoteCreate, NoteUpdate and NoteDelete.","Note.Create":"Fires when a note is created.","Note.Update":"Fires when a note is updated.","Note.Delete":"Fires when a note is deleted.","Currency.*":"Subscribes to every currency event: CurrencyCreate, CurrencyUpdate and CurrencyDelete.","Currency.Create":"Fires when a currency is created.","Currency.Update":"Fires when a currency is updated.","Currency.Delete":"Fires when a currency is deleted.","CurrencyExchangeRate.*":"Subscribes to every exchange rate event: CurrencyExchangeRateCreate, CurrencyExchangeRateUpdate and CurrencyExchangeRateDelete.","CurrencyExchangeRate.Create":"Fires when an exchange rate is created.","CurrencyExchangeRate.Update":"Fires when an exchange rate is updated.","CurrencyExchangeRate.Delete":"Fires when an exchange rate is deleted.","CurrencyExchangeRatesList.*":"Subscribes to every exchange rate list event: CurrencyExchangeRatesListCreate, CurrencyExchangeRatesListUpdate and CurrencyExchangeRatesListDelete.","CurrencyExchangeRatesList.Create":"Fires when an exchange rate list is created.","CurrencyExchangeRatesList.Update":"Fires when an exchange rate list is updated.","CurrencyExchangeRatesList.Delete":"Fires when an exchange rate list is deleted.","ProductPriceList.*":"Subscribes to every price list event: ProductPriceListCreate, ProductPriceListUpdate and ProductPriceListDelete.","ProductPriceList.Create":"Fires when a price list is created.","ProductPriceList.Update":"Fires when a price list is updated.","ProductPriceList.Delete":"Fires when a price list is deleted.","ProductPriceListPrice.*":"Subscribes to every price list price event: ProductPriceListPriceCreate, ProductPriceListPriceUpdate and ProductPriceListPriceDelete.","ProductPriceListPrice.Create":"Fires when a product price in a price list is created.","ProductPriceListPrice.Update":"Fires when a product price in a price list is updated.","ProductPriceListPrice.Delete":"Fires when a product price in a price list is deleted."}},"description":"Event types this webhook subscribes to (e.g. Account.Create, Lead.Update). At least one event is required; the webhook fires whenever any subscribed event occurs in the team space."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"WebhookEvent":{"description":"Event a webhook subscribes to; the webhook is called whenever the event occurs.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"webhook":{"type":"string","format":"uri","description":"Webhook this subscription belongs to. The parent webhook is fired whenever the subscribed event occurs.\n\nRelated Webhook record, returned as the URI of the record. With the 'expand' parameter the full record is returned instead; see 'Webhook' for its fields."},"event":{"type":"string","example":"*","enum":["*","Account.*","Account.Create","Account.Delete","Account.DocumentLinked","Account.OwnerChanged","Account.Update","ActivityRelation.*","ActivityRelation.Create","ActivityRelation.Delete","ActivityRelation.Update","Appointment.*","Appointment.Comment","Appointment.Create","Appointment.Delete","Appointment.DocumentLinked","Appointment.OwnerChanged","Appointment.Update","Contact.*","Contact.Create","Contact.Delete","Contact.DocumentLinked","Contact.OwnerChanged","Contact.Update","ContactAccountRelation.*","ContactAccountRelation.Create","ContactAccountRelation.Delete","ContactAccountRelation.Update","Currency.*","Currency.Create","Currency.Delete","Currency.Update","CurrencyExchangeRate.*","CurrencyExchangeRate.Create","CurrencyExchangeRate.Delete","CurrencyExchangeRate.Update","CurrencyExchangeRatesList.*","CurrencyExchangeRatesList.Create","CurrencyExchangeRatesList.Delete","CurrencyExchangeRatesList.Update","CustomEntity.*","CustomEntity.Create","CustomEntity.Delete","CustomEntity.DocumentLinked","CustomEntity.OwnerChanged","CustomEntity.Update","Email.*","Email.Create","Email.Delete","Email.DocumentLinked","Email.Update","Lead.*","Lead.BackToLead","Lead.Create","Lead.Delete","Lead.DocumentLinked","Lead.Lost","Lead.OwnerChanged","Lead.Update","LeadOpptyAccountRelation.*","LeadOpptyAccountRelation.Create","LeadOpptyAccountRelation.Delete","LeadOpptyAccountRelation.Update","LeadOpptyContactRelation.*","LeadOpptyContactRelation.Create","LeadOpptyContactRelation.Delete","LeadOpptyContactRelation.Update","Memo.*","Memo.Comment","Memo.Create","Memo.Delete","Memo.DocumentLinked","Memo.Update","Message.*","Message.Create","Message.Delete","Message.DocumentLinked","Message.Update","Note.*","Note.Create","Note.Delete","Note.Update","Opportunity.*","Opportunity.Create","Opportunity.Delete","Opportunity.DocumentLinked","Opportunity.Lost","Opportunity.Move","Opportunity.OwnerChanged","Opportunity.Qualify","Opportunity.Update","Opportunity.Won","OpptyProductRelation.*","OpptyProductRelation.Create","OpptyProductRelation.Delete","OpptyProductRelation.Update","Product.*","Product.Create","Product.Delete","Product.Update","ProductPriceList.*","ProductPriceList.Create","ProductPriceList.Delete","ProductPriceList.Update","ProductPriceListPrice.*","ProductPriceListPrice.Create","ProductPriceListPrice.Delete","ProductPriceListPrice.Update","Project.*","Project.Create","Project.Delete","Project.DocumentLinked","Project.OwnerChanged","Project.Update","Quote.*","Quote.Create","Quote.Delete","Quote.DocumentLinked","Quote.Lost","Quote.Move","Quote.OwnerChanged","Quote.Update","Quote.Won","QuoteAccountRelation.*","QuoteAccountRelation.Create","QuoteAccountRelation.Delete","QuoteAccountRelation.Update","QuoteContactRelation.*","QuoteContactRelation.Create","QuoteContactRelation.Delete","QuoteContactRelation.Update","Task.*","Task.Comment","Task.Create","Task.Delete","Task.DocumentLinked","Task.OwnerChanged","Task.Update"],"description":"Event type the parent webhook subscribes to (e.g. Account.Create, Lead.Update). The webhook fires whenever an event of this type occurs in the team space.","x-enumDescriptions":{"*":"Subscribes to every event of every entity in this list.","Lead.*":"Subscribes to every lead event: LeadCreate, LeadUpdate, LeadDelete, LeadBackToLead, LeadOwnerChanged, LeadDocumentLinked and LeadLost.","Lead.Create":"Fires when a lead is created.","Lead.Update":"Fires when a lead is updated.","Lead.Delete":"Fires when a lead is deleted.","Lead.BackToLead":"Fires when an opportunity is moved back to a lead; the event carries the resulting lead.","Lead.OwnerChanged":"Fires when the owner of a lead changes, including when it is created with an owner other than the user who created it.","Lead.DocumentLinked":"Fires when a document is linked to a lead; the event includes the document as the related entity.","Lead.Lost":"Fires when a lead is archived as lost.","Opportunity.*":"Subscribes to every opportunity event: OpportunityCreate, OpportunityUpdate, OpportunityDelete, OpportunityMove, OpportunityQualify, OpportunityOwnerChanged, OpportunityDocumentLinked, OpportunityWon and OpportunityLost.","Opportunity.Create":"Fires when an opportunity is created.","Opportunity.Update":"Fires when an opportunity is updated.","Opportunity.Delete":"Fires when an opportunity is deleted.","Opportunity.Move":"Fires when an opportunity moves to a different sales step; winning an opportunity also raises this event.","Opportunity.Qualify":"Fires when a lead is qualified into an opportunity; the event carries the new opportunity.","Opportunity.OwnerChanged":"Fires when the owner of an opportunity changes, including when it is created with an owner other than the user who created it.","Opportunity.DocumentLinked":"Fires when a document is linked to an opportunity; the event includes the document as the related entity.","Opportunity.Won":"Fires when an opportunity is created in or moved to the won step of its pipeline.","Opportunity.Lost":"Fires when an opportunity is archived as lost without reaching the won step.","Contact.*":"Subscribes to every contact event: ContactCreate, ContactUpdate, ContactDelete, ContactOwnerChanged and ContactDocumentLinked.","Contact.Create":"Fires when a contact is created.","Contact.Update":"Fires when a contact is updated.","Contact.Delete":"Fires when a contact is deleted.","Contact.OwnerChanged":"Fires when the owner of a contact changes, including when it is created with an owner other than the user who created it.","Contact.DocumentLinked":"Fires when a document is linked to a contact; the event includes the document as the related entity.","Account.*":"Subscribes to every account event: AccountCreate, AccountUpdate, AccountDelete, AccountOwnerChanged and AccountDocumentLinked.","Account.Create":"Fires when an account is created.","Account.Update":"Fires when an account is updated.","Account.Delete":"Fires when an account is deleted.","Account.OwnerChanged":"Fires when the owner of an account changes, including when it is created with an owner other than the user who created it.","Account.DocumentLinked":"Fires when a document is linked to an account; the event includes the document as the related entity.","Task.*":"Subscribes to every task event: TaskCreate, TaskUpdate, TaskDelete, TaskOwnerChanged, TaskDocumentLinked and TaskComment.","Task.Create":"Fires when a task is created.","Task.Update":"Fires when a task is updated.","Task.Delete":"Fires when a task is deleted.","Task.OwnerChanged":"Fires when the owner of a task changes, including when it is created with an owner other than the user who created it.","Task.DocumentLinked":"Fires when a document is linked to a task; the event includes the document as the related entity.","Task.Comment":"Fires when a comment is added to a task.","Appointment.*":"Subscribes to every appointment event: AppointmentCreate, AppointmentUpdate, AppointmentDelete, AppointmentOwnerChanged, AppointmentDocumentLinked and AppointmentComment.","Appointment.Create":"Fires when an appointment is created.","Appointment.Update":"Fires when an appointment is updated.","Appointment.Delete":"Fires when an appointment is deleted.","Appointment.OwnerChanged":"Fires when the owner of an appointment changes, including when it is created with an owner other than the user who created it.","Appointment.DocumentLinked":"Fires when a document is linked to an appointment; the event includes the document as the related entity.","Appointment.Comment":"Fires when a comment is added to an appointment.","Message.*":"Legacy subscription to all message events; memo and email changes are delivered as Memo and Email events instead.","Message.Create":"Legacy event that is no longer raised; use MemoCreate or EmailCreate instead.","Message.Update":"Legacy event that is no longer raised; use MemoUpdate or EmailUpdate instead.","Message.Delete":"Legacy event that is no longer raised; use MemoDelete or EmailDelete instead.","Message.DocumentLinked":"Legacy event that is no longer raised; use MemoDocumentLinked or EmailDocumentLinked instead.","Memo.*":"Subscribes to every memo event: MemoCreate, MemoUpdate, MemoDelete, MemoDocumentLinked and MemoComment.","Memo.Create":"Fires when a memo is created.","Memo.Update":"Fires when a memo is updated.","Memo.Delete":"Fires when a memo is deleted.","Memo.DocumentLinked":"Fires when a document is linked to a memo; the event includes the document as the related entity.","Memo.Comment":"Fires when a comment is added to a memo.","Email.*":"Subscribes to every email event: EmailCreate, EmailUpdate, EmailDelete and EmailDocumentLinked.","Email.Create":"Fires when an email is created.","Email.Update":"Fires when an email is updated.","Email.Delete":"Fires when an email is deleted.","Email.DocumentLinked":"Fires when a document is linked to an email; the event includes the document as the related entity.","OpptyProductRelation.*":"Subscribes to every opportunity product line event: OpptyProductRelationCreate, OpptyProductRelationUpdate and OpptyProductRelationDelete.","OpptyProductRelation.Create":"Fires when a product line of an opportunity is created.","OpptyProductRelation.Update":"Fires when a product line of an opportunity is updated.","OpptyProductRelation.Delete":"Fires when a product line of an opportunity is deleted.","Project.*":"Subscribes to every project event: ProjectCreate, ProjectUpdate, ProjectDelete, ProjectOwnerChanged and ProjectDocumentLinked.","Project.Create":"Fires when a project is created.","Project.Update":"Fires when a project is updated.","Project.Delete":"Fires when a project is deleted.","Project.OwnerChanged":"Fires when the owner of a project changes, including when it is created with an owner other than the user who created it.","Project.DocumentLinked":"Fires when a document is linked to a project; the event includes the document as the related entity.","Quote.*":"Subscribes to every quote event: QuoteCreate, QuoteUpdate, QuoteDelete, QuoteOwnerChanged, QuoteDocumentLinked, QuoteMove, QuoteWon and QuoteLost.","Quote.Create":"Fires when a quote is created.","Quote.Update":"Fires when a quote is updated.","Quote.Delete":"Fires when a quote is deleted.","Quote.OwnerChanged":"Fires when the owner of a quote changes, including when it is created with an owner other than the user who created it.","Quote.DocumentLinked":"Fires when a document is linked to a quote; the event includes the document as the related entity.","Quote.Move":"Fires when a quote moves to a different step of its quote process; winning a quote also raises this event.","Quote.Won":"Fires when a quote is created in or moved to the won (accepted) step of its quote process.","Quote.Lost":"Fires when a quote is archived as lost without reaching the won step.","CustomEntity.*":"Subscribes to every custom entity event: CustomEntityCreate, CustomEntityUpdate, CustomEntityDelete, CustomEntityOwnerChanged and CustomEntityDocumentLinked.","CustomEntity.Create":"Fires when a custom entity record is created.","CustomEntity.Update":"Fires when a custom entity record is updated.","CustomEntity.Delete":"Fires when a custom entity record is deleted.","CustomEntity.OwnerChanged":"Fires when the owner of a custom entity record changes, including when it is created with an owner other than the user who created it.","CustomEntity.DocumentLinked":"Fires when a document is linked to a custom entity record; the event includes the document as the related entity.","ContactAccountRelation.*":"Subscribes to every contact-account link event: ContactAccountRelationCreate, ContactAccountRelationUpdate and ContactAccountRelationDelete.","ContactAccountRelation.Create":"Fires when a contact is linked to an account.","ContactAccountRelation.Update":"Fires when the link between a contact and an account is updated.","ContactAccountRelation.Delete":"Fires when a contact is unlinked from an account.","LeadOpptyAccountRelation.*":"Subscribes to every lead/opportunity account link event: LeadOpptyAccountRelationCreate, LeadOpptyAccountRelationUpdate and LeadOpptyAccountRelationDelete.","LeadOpptyAccountRelation.Create":"Fires when an account is linked to a lead or opportunity.","LeadOpptyAccountRelation.Update":"Fires when the link between an account and a lead or opportunity is updated.","LeadOpptyAccountRelation.Delete":"Fires when an account is unlinked from a lead or opportunity.","LeadOpptyContactRelation.*":"Subscribes to every lead/opportunity contact link event: LeadOpptyContactRelationCreate, LeadOpptyContactRelationUpdate and LeadOpptyContactRelationDelete.","LeadOpptyContactRelation.Create":"Fires when a contact is linked to a lead or opportunity.","LeadOpptyContactRelation.Update":"Fires when the link between a contact and a lead or opportunity is updated.","LeadOpptyContactRelation.Delete":"Fires when a contact is unlinked from a lead or opportunity.","ActivityRelation.*":"Subscribes to every activity link event: ActivityRelationCreate, ActivityRelationUpdate and ActivityRelationDelete.","ActivityRelation.Create":"Fires when a task or appointment is linked to a record.","ActivityRelation.Update":"Fires when the link between a task or appointment and a record is updated.","ActivityRelation.Delete":"Fires when a task or appointment is unlinked from a record.","QuoteAccountRelation.*":"Subscribes to every quote-account link event: QuoteAccountRelationCreate, QuoteAccountRelationUpdate and QuoteAccountRelationDelete.","QuoteAccountRelation.Create":"Fires when an account is linked to a quote.","QuoteAccountRelation.Update":"Fires when the link between an account and a quote is updated.","QuoteAccountRelation.Delete":"Fires when an account is unlinked from a quote.","QuoteContactRelation.*":"Subscribes to every quote-contact link event: QuoteContactRelationCreate, QuoteContactRelationUpdate and QuoteContactRelationDelete.","QuoteContactRelation.Create":"Fires when a contact is linked to a quote.","QuoteContactRelation.Update":"Fires when the link between a contact and a quote is updated.","QuoteContactRelation.Delete":"Fires when a contact is unlinked from a quote.","Product.*":"Subscribes to every product event: ProductCreate, ProductUpdate and ProductDelete.","Product.Create":"Fires when a product is created.","Product.Update":"Fires when a product is updated.","Product.Delete":"Fires when a product is deleted.","Note.*":"Subscribes to every note event: NoteCreate, NoteUpdate and NoteDelete.","Note.Create":"Fires when a note is created.","Note.Update":"Fires when a note is updated.","Note.Delete":"Fires when a note is deleted.","Currency.*":"Subscribes to every currency event: CurrencyCreate, CurrencyUpdate and CurrencyDelete.","Currency.Create":"Fires when a currency is created.","Currency.Update":"Fires when a currency is updated.","Currency.Delete":"Fires when a currency is deleted.","CurrencyExchangeRate.*":"Subscribes to every exchange rate event: CurrencyExchangeRateCreate, CurrencyExchangeRateUpdate and CurrencyExchangeRateDelete.","CurrencyExchangeRate.Create":"Fires when an exchange rate is created.","CurrencyExchangeRate.Update":"Fires when an exchange rate is updated.","CurrencyExchangeRate.Delete":"Fires when an exchange rate is deleted.","CurrencyExchangeRatesList.*":"Subscribes to every exchange rate list event: CurrencyExchangeRatesListCreate, CurrencyExchangeRatesListUpdate and CurrencyExchangeRatesListDelete.","CurrencyExchangeRatesList.Create":"Fires when an exchange rate list is created.","CurrencyExchangeRatesList.Update":"Fires when an exchange rate list is updated.","CurrencyExchangeRatesList.Delete":"Fires when an exchange rate list is deleted.","ProductPriceList.*":"Subscribes to every price list event: ProductPriceListCreate, ProductPriceListUpdate and ProductPriceListDelete.","ProductPriceList.Create":"Fires when a price list is created.","ProductPriceList.Update":"Fires when a price list is updated.","ProductPriceList.Delete":"Fires when a price list is deleted.","ProductPriceListPrice.*":"Subscribes to every price list price event: ProductPriceListPriceCreate, ProductPriceListPriceUpdate and ProductPriceListPriceDelete.","ProductPriceListPrice.Create":"Fires when a product price in a price list is created.","ProductPriceListPrice.Update":"Fires when a product price in a price list is updated.","ProductPriceListPrice.Delete":"Fires when a product price in a price list is deleted."}},"webhook_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent webhook."}},"required":["is_delete_protected","id","webhook","event","webhook_id"]},"createWebhookEventInput":{"description":"Field values of a new WebhookEvent record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"event":{"type":"string","example":"*","enum":["*","Account.*","Account.Create","Account.Delete","Account.DocumentLinked","Account.OwnerChanged","Account.Update","ActivityRelation.*","ActivityRelation.Create","ActivityRelation.Delete","ActivityRelation.Update","Appointment.*","Appointment.Comment","Appointment.Create","Appointment.Delete","Appointment.DocumentLinked","Appointment.OwnerChanged","Appointment.Update","Contact.*","Contact.Create","Contact.Delete","Contact.DocumentLinked","Contact.OwnerChanged","Contact.Update","ContactAccountRelation.*","ContactAccountRelation.Create","ContactAccountRelation.Delete","ContactAccountRelation.Update","Currency.*","Currency.Create","Currency.Delete","Currency.Update","CurrencyExchangeRate.*","CurrencyExchangeRate.Create","CurrencyExchangeRate.Delete","CurrencyExchangeRate.Update","CurrencyExchangeRatesList.*","CurrencyExchangeRatesList.Create","CurrencyExchangeRatesList.Delete","CurrencyExchangeRatesList.Update","CustomEntity.*","CustomEntity.Create","CustomEntity.Delete","CustomEntity.DocumentLinked","CustomEntity.OwnerChanged","CustomEntity.Update","Email.*","Email.Create","Email.Delete","Email.DocumentLinked","Email.Update","Lead.*","Lead.BackToLead","Lead.Create","Lead.Delete","Lead.DocumentLinked","Lead.Lost","Lead.OwnerChanged","Lead.Update","LeadOpptyAccountRelation.*","LeadOpptyAccountRelation.Create","LeadOpptyAccountRelation.Delete","LeadOpptyAccountRelation.Update","LeadOpptyContactRelation.*","LeadOpptyContactRelation.Create","LeadOpptyContactRelation.Delete","LeadOpptyContactRelation.Update","Memo.*","Memo.Comment","Memo.Create","Memo.Delete","Memo.DocumentLinked","Memo.Update","Message.*","Message.Create","Message.Delete","Message.DocumentLinked","Message.Update","Note.*","Note.Create","Note.Delete","Note.Update","Opportunity.*","Opportunity.Create","Opportunity.Delete","Opportunity.DocumentLinked","Opportunity.Lost","Opportunity.Move","Opportunity.OwnerChanged","Opportunity.Qualify","Opportunity.Update","Opportunity.Won","OpptyProductRelation.*","OpptyProductRelation.Create","OpptyProductRelation.Delete","OpptyProductRelation.Update","Product.*","Product.Create","Product.Delete","Product.Update","ProductPriceList.*","ProductPriceList.Create","ProductPriceList.Delete","ProductPriceList.Update","ProductPriceListPrice.*","ProductPriceListPrice.Create","ProductPriceListPrice.Delete","ProductPriceListPrice.Update","Project.*","Project.Create","Project.Delete","Project.DocumentLinked","Project.OwnerChanged","Project.Update","Quote.*","Quote.Create","Quote.Delete","Quote.DocumentLinked","Quote.Lost","Quote.Move","Quote.OwnerChanged","Quote.Update","Quote.Won","QuoteAccountRelation.*","QuoteAccountRelation.Create","QuoteAccountRelation.Delete","QuoteAccountRelation.Update","QuoteContactRelation.*","QuoteContactRelation.Create","QuoteContactRelation.Delete","QuoteContactRelation.Update","Task.*","Task.Comment","Task.Create","Task.Delete","Task.DocumentLinked","Task.OwnerChanged","Task.Update"],"description":"Event type the parent webhook subscribes to (e.g. Account.Create, Lead.Update). The webhook fires whenever an event of this type occurs in the team space.","x-enumDescriptions":{"*":"Subscribes to every event of every entity in this list.","Lead.*":"Subscribes to every lead event: LeadCreate, LeadUpdate, LeadDelete, LeadBackToLead, LeadOwnerChanged, LeadDocumentLinked and LeadLost.","Lead.Create":"Fires when a lead is created.","Lead.Update":"Fires when a lead is updated.","Lead.Delete":"Fires when a lead is deleted.","Lead.BackToLead":"Fires when an opportunity is moved back to a lead; the event carries the resulting lead.","Lead.OwnerChanged":"Fires when the owner of a lead changes, including when it is created with an owner other than the user who created it.","Lead.DocumentLinked":"Fires when a document is linked to a lead; the event includes the document as the related entity.","Lead.Lost":"Fires when a lead is archived as lost.","Opportunity.*":"Subscribes to every opportunity event: OpportunityCreate, OpportunityUpdate, OpportunityDelete, OpportunityMove, OpportunityQualify, OpportunityOwnerChanged, OpportunityDocumentLinked, OpportunityWon and OpportunityLost.","Opportunity.Create":"Fires when an opportunity is created.","Opportunity.Update":"Fires when an opportunity is updated.","Opportunity.Delete":"Fires when an opportunity is deleted.","Opportunity.Move":"Fires when an opportunity moves to a different sales step; winning an opportunity also raises this event.","Opportunity.Qualify":"Fires when a lead is qualified into an opportunity; the event carries the new opportunity.","Opportunity.OwnerChanged":"Fires when the owner of an opportunity changes, including when it is created with an owner other than the user who created it.","Opportunity.DocumentLinked":"Fires when a document is linked to an opportunity; the event includes the document as the related entity.","Opportunity.Won":"Fires when an opportunity is created in or moved to the won step of its pipeline.","Opportunity.Lost":"Fires when an opportunity is archived as lost without reaching the won step.","Contact.*":"Subscribes to every contact event: ContactCreate, ContactUpdate, ContactDelete, ContactOwnerChanged and ContactDocumentLinked.","Contact.Create":"Fires when a contact is created.","Contact.Update":"Fires when a contact is updated.","Contact.Delete":"Fires when a contact is deleted.","Contact.OwnerChanged":"Fires when the owner of a contact changes, including when it is created with an owner other than the user who created it.","Contact.DocumentLinked":"Fires when a document is linked to a contact; the event includes the document as the related entity.","Account.*":"Subscribes to every account event: AccountCreate, AccountUpdate, AccountDelete, AccountOwnerChanged and AccountDocumentLinked.","Account.Create":"Fires when an account is created.","Account.Update":"Fires when an account is updated.","Account.Delete":"Fires when an account is deleted.","Account.OwnerChanged":"Fires when the owner of an account changes, including when it is created with an owner other than the user who created it.","Account.DocumentLinked":"Fires when a document is linked to an account; the event includes the document as the related entity.","Task.*":"Subscribes to every task event: TaskCreate, TaskUpdate, TaskDelete, TaskOwnerChanged, TaskDocumentLinked and TaskComment.","Task.Create":"Fires when a task is created.","Task.Update":"Fires when a task is updated.","Task.Delete":"Fires when a task is deleted.","Task.OwnerChanged":"Fires when the owner of a task changes, including when it is created with an owner other than the user who created it.","Task.DocumentLinked":"Fires when a document is linked to a task; the event includes the document as the related entity.","Task.Comment":"Fires when a comment is added to a task.","Appointment.*":"Subscribes to every appointment event: AppointmentCreate, AppointmentUpdate, AppointmentDelete, AppointmentOwnerChanged, AppointmentDocumentLinked and AppointmentComment.","Appointment.Create":"Fires when an appointment is created.","Appointment.Update":"Fires when an appointment is updated.","Appointment.Delete":"Fires when an appointment is deleted.","Appointment.OwnerChanged":"Fires when the owner of an appointment changes, including when it is created with an owner other than the user who created it.","Appointment.DocumentLinked":"Fires when a document is linked to an appointment; the event includes the document as the related entity.","Appointment.Comment":"Fires when a comment is added to an appointment.","Message.*":"Legacy subscription to all message events; memo and email changes are delivered as Memo and Email events instead.","Message.Create":"Legacy event that is no longer raised; use MemoCreate or EmailCreate instead.","Message.Update":"Legacy event that is no longer raised; use MemoUpdate or EmailUpdate instead.","Message.Delete":"Legacy event that is no longer raised; use MemoDelete or EmailDelete instead.","Message.DocumentLinked":"Legacy event that is no longer raised; use MemoDocumentLinked or EmailDocumentLinked instead.","Memo.*":"Subscribes to every memo event: MemoCreate, MemoUpdate, MemoDelete, MemoDocumentLinked and MemoComment.","Memo.Create":"Fires when a memo is created.","Memo.Update":"Fires when a memo is updated.","Memo.Delete":"Fires when a memo is deleted.","Memo.DocumentLinked":"Fires when a document is linked to a memo; the event includes the document as the related entity.","Memo.Comment":"Fires when a comment is added to a memo.","Email.*":"Subscribes to every email event: EmailCreate, EmailUpdate, EmailDelete and EmailDocumentLinked.","Email.Create":"Fires when an email is created.","Email.Update":"Fires when an email is updated.","Email.Delete":"Fires when an email is deleted.","Email.DocumentLinked":"Fires when a document is linked to an email; the event includes the document as the related entity.","OpptyProductRelation.*":"Subscribes to every opportunity product line event: OpptyProductRelationCreate, OpptyProductRelationUpdate and OpptyProductRelationDelete.","OpptyProductRelation.Create":"Fires when a product line of an opportunity is created.","OpptyProductRelation.Update":"Fires when a product line of an opportunity is updated.","OpptyProductRelation.Delete":"Fires when a product line of an opportunity is deleted.","Project.*":"Subscribes to every project event: ProjectCreate, ProjectUpdate, ProjectDelete, ProjectOwnerChanged and ProjectDocumentLinked.","Project.Create":"Fires when a project is created.","Project.Update":"Fires when a project is updated.","Project.Delete":"Fires when a project is deleted.","Project.OwnerChanged":"Fires when the owner of a project changes, including when it is created with an owner other than the user who created it.","Project.DocumentLinked":"Fires when a document is linked to a project; the event includes the document as the related entity.","Quote.*":"Subscribes to every quote event: QuoteCreate, QuoteUpdate, QuoteDelete, QuoteOwnerChanged, QuoteDocumentLinked, QuoteMove, QuoteWon and QuoteLost.","Quote.Create":"Fires when a quote is created.","Quote.Update":"Fires when a quote is updated.","Quote.Delete":"Fires when a quote is deleted.","Quote.OwnerChanged":"Fires when the owner of a quote changes, including when it is created with an owner other than the user who created it.","Quote.DocumentLinked":"Fires when a document is linked to a quote; the event includes the document as the related entity.","Quote.Move":"Fires when a quote moves to a different step of its quote process; winning a quote also raises this event.","Quote.Won":"Fires when a quote is created in or moved to the won (accepted) step of its quote process.","Quote.Lost":"Fires when a quote is archived as lost without reaching the won step.","CustomEntity.*":"Subscribes to every custom entity event: CustomEntityCreate, CustomEntityUpdate, CustomEntityDelete, CustomEntityOwnerChanged and CustomEntityDocumentLinked.","CustomEntity.Create":"Fires when a custom entity record is created.","CustomEntity.Update":"Fires when a custom entity record is updated.","CustomEntity.Delete":"Fires when a custom entity record is deleted.","CustomEntity.OwnerChanged":"Fires when the owner of a custom entity record changes, including when it is created with an owner other than the user who created it.","CustomEntity.DocumentLinked":"Fires when a document is linked to a custom entity record; the event includes the document as the related entity.","ContactAccountRelation.*":"Subscribes to every contact-account link event: ContactAccountRelationCreate, ContactAccountRelationUpdate and ContactAccountRelationDelete.","ContactAccountRelation.Create":"Fires when a contact is linked to an account.","ContactAccountRelation.Update":"Fires when the link between a contact and an account is updated.","ContactAccountRelation.Delete":"Fires when a contact is unlinked from an account.","LeadOpptyAccountRelation.*":"Subscribes to every lead/opportunity account link event: LeadOpptyAccountRelationCreate, LeadOpptyAccountRelationUpdate and LeadOpptyAccountRelationDelete.","LeadOpptyAccountRelation.Create":"Fires when an account is linked to a lead or opportunity.","LeadOpptyAccountRelation.Update":"Fires when the link between an account and a lead or opportunity is updated.","LeadOpptyAccountRelation.Delete":"Fires when an account is unlinked from a lead or opportunity.","LeadOpptyContactRelation.*":"Subscribes to every lead/opportunity contact link event: LeadOpptyContactRelationCreate, LeadOpptyContactRelationUpdate and LeadOpptyContactRelationDelete.","LeadOpptyContactRelation.Create":"Fires when a contact is linked to a lead or opportunity.","LeadOpptyContactRelation.Update":"Fires when the link between a contact and a lead or opportunity is updated.","LeadOpptyContactRelation.Delete":"Fires when a contact is unlinked from a lead or opportunity.","ActivityRelation.*":"Subscribes to every activity link event: ActivityRelationCreate, ActivityRelationUpdate and ActivityRelationDelete.","ActivityRelation.Create":"Fires when a task or appointment is linked to a record.","ActivityRelation.Update":"Fires when the link between a task or appointment and a record is updated.","ActivityRelation.Delete":"Fires when a task or appointment is unlinked from a record.","QuoteAccountRelation.*":"Subscribes to every quote-account link event: QuoteAccountRelationCreate, QuoteAccountRelationUpdate and QuoteAccountRelationDelete.","QuoteAccountRelation.Create":"Fires when an account is linked to a quote.","QuoteAccountRelation.Update":"Fires when the link between an account and a quote is updated.","QuoteAccountRelation.Delete":"Fires when an account is unlinked from a quote.","QuoteContactRelation.*":"Subscribes to every quote-contact link event: QuoteContactRelationCreate, QuoteContactRelationUpdate and QuoteContactRelationDelete.","QuoteContactRelation.Create":"Fires when a contact is linked to a quote.","QuoteContactRelation.Update":"Fires when the link between a contact and a quote is updated.","QuoteContactRelation.Delete":"Fires when a contact is unlinked from a quote.","Product.*":"Subscribes to every product event: ProductCreate, ProductUpdate and ProductDelete.","Product.Create":"Fires when a product is created.","Product.Update":"Fires when a product is updated.","Product.Delete":"Fires when a product is deleted.","Note.*":"Subscribes to every note event: NoteCreate, NoteUpdate and NoteDelete.","Note.Create":"Fires when a note is created.","Note.Update":"Fires when a note is updated.","Note.Delete":"Fires when a note is deleted.","Currency.*":"Subscribes to every currency event: CurrencyCreate, CurrencyUpdate and CurrencyDelete.","Currency.Create":"Fires when a currency is created.","Currency.Update":"Fires when a currency is updated.","Currency.Delete":"Fires when a currency is deleted.","CurrencyExchangeRate.*":"Subscribes to every exchange rate event: CurrencyExchangeRateCreate, CurrencyExchangeRateUpdate and CurrencyExchangeRateDelete.","CurrencyExchangeRate.Create":"Fires when an exchange rate is created.","CurrencyExchangeRate.Update":"Fires when an exchange rate is updated.","CurrencyExchangeRate.Delete":"Fires when an exchange rate is deleted.","CurrencyExchangeRatesList.*":"Subscribes to every exchange rate list event: CurrencyExchangeRatesListCreate, CurrencyExchangeRatesListUpdate and CurrencyExchangeRatesListDelete.","CurrencyExchangeRatesList.Create":"Fires when an exchange rate list is created.","CurrencyExchangeRatesList.Update":"Fires when an exchange rate list is updated.","CurrencyExchangeRatesList.Delete":"Fires when an exchange rate list is deleted.","ProductPriceList.*":"Subscribes to every price list event: ProductPriceListCreate, ProductPriceListUpdate and ProductPriceListDelete.","ProductPriceList.Create":"Fires when a price list is created.","ProductPriceList.Update":"Fires when a price list is updated.","ProductPriceList.Delete":"Fires when a price list is deleted.","ProductPriceListPrice.*":"Subscribes to every price list price event: ProductPriceListPriceCreate, ProductPriceListPriceUpdate and ProductPriceListPriceDelete.","ProductPriceListPrice.Create":"Fires when a product price in a price list is created.","ProductPriceListPrice.Update":"Fires when a product price in a price list is updated.","ProductPriceListPrice.Delete":"Fires when a product price in a price list is deleted."}},"webhook_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent webhook."}},"required":["event","webhook_id"]},"updateWebhookEventInput":{"description":"Field values to change on a WebhookEvent record; fields left out keep their values.","properties":{"event":{"type":"string","example":"*","enum":["*","Account.*","Account.Create","Account.Delete","Account.DocumentLinked","Account.OwnerChanged","Account.Update","ActivityRelation.*","ActivityRelation.Create","ActivityRelation.Delete","ActivityRelation.Update","Appointment.*","Appointment.Comment","Appointment.Create","Appointment.Delete","Appointment.DocumentLinked","Appointment.OwnerChanged","Appointment.Update","Contact.*","Contact.Create","Contact.Delete","Contact.DocumentLinked","Contact.OwnerChanged","Contact.Update","ContactAccountRelation.*","ContactAccountRelation.Create","ContactAccountRelation.Delete","ContactAccountRelation.Update","Currency.*","Currency.Create","Currency.Delete","Currency.Update","CurrencyExchangeRate.*","CurrencyExchangeRate.Create","CurrencyExchangeRate.Delete","CurrencyExchangeRate.Update","CurrencyExchangeRatesList.*","CurrencyExchangeRatesList.Create","CurrencyExchangeRatesList.Delete","CurrencyExchangeRatesList.Update","CustomEntity.*","CustomEntity.Create","CustomEntity.Delete","CustomEntity.DocumentLinked","CustomEntity.OwnerChanged","CustomEntity.Update","Email.*","Email.Create","Email.Delete","Email.DocumentLinked","Email.Update","Lead.*","Lead.BackToLead","Lead.Create","Lead.Delete","Lead.DocumentLinked","Lead.Lost","Lead.OwnerChanged","Lead.Update","LeadOpptyAccountRelation.*","LeadOpptyAccountRelation.Create","LeadOpptyAccountRelation.Delete","LeadOpptyAccountRelation.Update","LeadOpptyContactRelation.*","LeadOpptyContactRelation.Create","LeadOpptyContactRelation.Delete","LeadOpptyContactRelation.Update","Memo.*","Memo.Comment","Memo.Create","Memo.Delete","Memo.DocumentLinked","Memo.Update","Message.*","Message.Create","Message.Delete","Message.DocumentLinked","Message.Update","Note.*","Note.Create","Note.Delete","Note.Update","Opportunity.*","Opportunity.Create","Opportunity.Delete","Opportunity.DocumentLinked","Opportunity.Lost","Opportunity.Move","Opportunity.OwnerChanged","Opportunity.Qualify","Opportunity.Update","Opportunity.Won","OpptyProductRelation.*","OpptyProductRelation.Create","OpptyProductRelation.Delete","OpptyProductRelation.Update","Product.*","Product.Create","Product.Delete","Product.Update","ProductPriceList.*","ProductPriceList.Create","ProductPriceList.Delete","ProductPriceList.Update","ProductPriceListPrice.*","ProductPriceListPrice.Create","ProductPriceListPrice.Delete","ProductPriceListPrice.Update","Project.*","Project.Create","Project.Delete","Project.DocumentLinked","Project.OwnerChanged","Project.Update","Quote.*","Quote.Create","Quote.Delete","Quote.DocumentLinked","Quote.Lost","Quote.Move","Quote.OwnerChanged","Quote.Update","Quote.Won","QuoteAccountRelation.*","QuoteAccountRelation.Create","QuoteAccountRelation.Delete","QuoteAccountRelation.Update","QuoteContactRelation.*","QuoteContactRelation.Create","QuoteContactRelation.Delete","QuoteContactRelation.Update","Task.*","Task.Comment","Task.Create","Task.Delete","Task.DocumentLinked","Task.OwnerChanged","Task.Update"],"description":"Event type the parent webhook subscribes to (e.g. Account.Create, Lead.Update). The webhook fires whenever an event of this type occurs in the team space.","x-enumDescriptions":{"*":"Subscribes to every event of every entity in this list.","Lead.*":"Subscribes to every lead event: LeadCreate, LeadUpdate, LeadDelete, LeadBackToLead, LeadOwnerChanged, LeadDocumentLinked and LeadLost.","Lead.Create":"Fires when a lead is created.","Lead.Update":"Fires when a lead is updated.","Lead.Delete":"Fires when a lead is deleted.","Lead.BackToLead":"Fires when an opportunity is moved back to a lead; the event carries the resulting lead.","Lead.OwnerChanged":"Fires when the owner of a lead changes, including when it is created with an owner other than the user who created it.","Lead.DocumentLinked":"Fires when a document is linked to a lead; the event includes the document as the related entity.","Lead.Lost":"Fires when a lead is archived as lost.","Opportunity.*":"Subscribes to every opportunity event: OpportunityCreate, OpportunityUpdate, OpportunityDelete, OpportunityMove, OpportunityQualify, OpportunityOwnerChanged, OpportunityDocumentLinked, OpportunityWon and OpportunityLost.","Opportunity.Create":"Fires when an opportunity is created.","Opportunity.Update":"Fires when an opportunity is updated.","Opportunity.Delete":"Fires when an opportunity is deleted.","Opportunity.Move":"Fires when an opportunity moves to a different sales step; winning an opportunity also raises this event.","Opportunity.Qualify":"Fires when a lead is qualified into an opportunity; the event carries the new opportunity.","Opportunity.OwnerChanged":"Fires when the owner of an opportunity changes, including when it is created with an owner other than the user who created it.","Opportunity.DocumentLinked":"Fires when a document is linked to an opportunity; the event includes the document as the related entity.","Opportunity.Won":"Fires when an opportunity is created in or moved to the won step of its pipeline.","Opportunity.Lost":"Fires when an opportunity is archived as lost without reaching the won step.","Contact.*":"Subscribes to every contact event: ContactCreate, ContactUpdate, ContactDelete, ContactOwnerChanged and ContactDocumentLinked.","Contact.Create":"Fires when a contact is created.","Contact.Update":"Fires when a contact is updated.","Contact.Delete":"Fires when a contact is deleted.","Contact.OwnerChanged":"Fires when the owner of a contact changes, including when it is created with an owner other than the user who created it.","Contact.DocumentLinked":"Fires when a document is linked to a contact; the event includes the document as the related entity.","Account.*":"Subscribes to every account event: AccountCreate, AccountUpdate, AccountDelete, AccountOwnerChanged and AccountDocumentLinked.","Account.Create":"Fires when an account is created.","Account.Update":"Fires when an account is updated.","Account.Delete":"Fires when an account is deleted.","Account.OwnerChanged":"Fires when the owner of an account changes, including when it is created with an owner other than the user who created it.","Account.DocumentLinked":"Fires when a document is linked to an account; the event includes the document as the related entity.","Task.*":"Subscribes to every task event: TaskCreate, TaskUpdate, TaskDelete, TaskOwnerChanged, TaskDocumentLinked and TaskComment.","Task.Create":"Fires when a task is created.","Task.Update":"Fires when a task is updated.","Task.Delete":"Fires when a task is deleted.","Task.OwnerChanged":"Fires when the owner of a task changes, including when it is created with an owner other than the user who created it.","Task.DocumentLinked":"Fires when a document is linked to a task; the event includes the document as the related entity.","Task.Comment":"Fires when a comment is added to a task.","Appointment.*":"Subscribes to every appointment event: AppointmentCreate, AppointmentUpdate, AppointmentDelete, AppointmentOwnerChanged, AppointmentDocumentLinked and AppointmentComment.","Appointment.Create":"Fires when an appointment is created.","Appointment.Update":"Fires when an appointment is updated.","Appointment.Delete":"Fires when an appointment is deleted.","Appointment.OwnerChanged":"Fires when the owner of an appointment changes, including when it is created with an owner other than the user who created it.","Appointment.DocumentLinked":"Fires when a document is linked to an appointment; the event includes the document as the related entity.","Appointment.Comment":"Fires when a comment is added to an appointment.","Message.*":"Legacy subscription to all message events; memo and email changes are delivered as Memo and Email events instead.","Message.Create":"Legacy event that is no longer raised; use MemoCreate or EmailCreate instead.","Message.Update":"Legacy event that is no longer raised; use MemoUpdate or EmailUpdate instead.","Message.Delete":"Legacy event that is no longer raised; use MemoDelete or EmailDelete instead.","Message.DocumentLinked":"Legacy event that is no longer raised; use MemoDocumentLinked or EmailDocumentLinked instead.","Memo.*":"Subscribes to every memo event: MemoCreate, MemoUpdate, MemoDelete, MemoDocumentLinked and MemoComment.","Memo.Create":"Fires when a memo is created.","Memo.Update":"Fires when a memo is updated.","Memo.Delete":"Fires when a memo is deleted.","Memo.DocumentLinked":"Fires when a document is linked to a memo; the event includes the document as the related entity.","Memo.Comment":"Fires when a comment is added to a memo.","Email.*":"Subscribes to every email event: EmailCreate, EmailUpdate, EmailDelete and EmailDocumentLinked.","Email.Create":"Fires when an email is created.","Email.Update":"Fires when an email is updated.","Email.Delete":"Fires when an email is deleted.","Email.DocumentLinked":"Fires when a document is linked to an email; the event includes the document as the related entity.","OpptyProductRelation.*":"Subscribes to every opportunity product line event: OpptyProductRelationCreate, OpptyProductRelationUpdate and OpptyProductRelationDelete.","OpptyProductRelation.Create":"Fires when a product line of an opportunity is created.","OpptyProductRelation.Update":"Fires when a product line of an opportunity is updated.","OpptyProductRelation.Delete":"Fires when a product line of an opportunity is deleted.","Project.*":"Subscribes to every project event: ProjectCreate, ProjectUpdate, ProjectDelete, ProjectOwnerChanged and ProjectDocumentLinked.","Project.Create":"Fires when a project is created.","Project.Update":"Fires when a project is updated.","Project.Delete":"Fires when a project is deleted.","Project.OwnerChanged":"Fires when the owner of a project changes, including when it is created with an owner other than the user who created it.","Project.DocumentLinked":"Fires when a document is linked to a project; the event includes the document as the related entity.","Quote.*":"Subscribes to every quote event: QuoteCreate, QuoteUpdate, QuoteDelete, QuoteOwnerChanged, QuoteDocumentLinked, QuoteMove, QuoteWon and QuoteLost.","Quote.Create":"Fires when a quote is created.","Quote.Update":"Fires when a quote is updated.","Quote.Delete":"Fires when a quote is deleted.","Quote.OwnerChanged":"Fires when the owner of a quote changes, including when it is created with an owner other than the user who created it.","Quote.DocumentLinked":"Fires when a document is linked to a quote; the event includes the document as the related entity.","Quote.Move":"Fires when a quote moves to a different step of its quote process; winning a quote also raises this event.","Quote.Won":"Fires when a quote is created in or moved to the won (accepted) step of its quote process.","Quote.Lost":"Fires when a quote is archived as lost without reaching the won step.","CustomEntity.*":"Subscribes to every custom entity event: CustomEntityCreate, CustomEntityUpdate, CustomEntityDelete, CustomEntityOwnerChanged and CustomEntityDocumentLinked.","CustomEntity.Create":"Fires when a custom entity record is created.","CustomEntity.Update":"Fires when a custom entity record is updated.","CustomEntity.Delete":"Fires when a custom entity record is deleted.","CustomEntity.OwnerChanged":"Fires when the owner of a custom entity record changes, including when it is created with an owner other than the user who created it.","CustomEntity.DocumentLinked":"Fires when a document is linked to a custom entity record; the event includes the document as the related entity.","ContactAccountRelation.*":"Subscribes to every contact-account link event: ContactAccountRelationCreate, ContactAccountRelationUpdate and ContactAccountRelationDelete.","ContactAccountRelation.Create":"Fires when a contact is linked to an account.","ContactAccountRelation.Update":"Fires when the link between a contact and an account is updated.","ContactAccountRelation.Delete":"Fires when a contact is unlinked from an account.","LeadOpptyAccountRelation.*":"Subscribes to every lead/opportunity account link event: LeadOpptyAccountRelationCreate, LeadOpptyAccountRelationUpdate and LeadOpptyAccountRelationDelete.","LeadOpptyAccountRelation.Create":"Fires when an account is linked to a lead or opportunity.","LeadOpptyAccountRelation.Update":"Fires when the link between an account and a lead or opportunity is updated.","LeadOpptyAccountRelation.Delete":"Fires when an account is unlinked from a lead or opportunity.","LeadOpptyContactRelation.*":"Subscribes to every lead/opportunity contact link event: LeadOpptyContactRelationCreate, LeadOpptyContactRelationUpdate and LeadOpptyContactRelationDelete.","LeadOpptyContactRelation.Create":"Fires when a contact is linked to a lead or opportunity.","LeadOpptyContactRelation.Update":"Fires when the link between a contact and a lead or opportunity is updated.","LeadOpptyContactRelation.Delete":"Fires when a contact is unlinked from a lead or opportunity.","ActivityRelation.*":"Subscribes to every activity link event: ActivityRelationCreate, ActivityRelationUpdate and ActivityRelationDelete.","ActivityRelation.Create":"Fires when a task or appointment is linked to a record.","ActivityRelation.Update":"Fires when the link between a task or appointment and a record is updated.","ActivityRelation.Delete":"Fires when a task or appointment is unlinked from a record.","QuoteAccountRelation.*":"Subscribes to every quote-account link event: QuoteAccountRelationCreate, QuoteAccountRelationUpdate and QuoteAccountRelationDelete.","QuoteAccountRelation.Create":"Fires when an account is linked to a quote.","QuoteAccountRelation.Update":"Fires when the link between an account and a quote is updated.","QuoteAccountRelation.Delete":"Fires when an account is unlinked from a quote.","QuoteContactRelation.*":"Subscribes to every quote-contact link event: QuoteContactRelationCreate, QuoteContactRelationUpdate and QuoteContactRelationDelete.","QuoteContactRelation.Create":"Fires when a contact is linked to a quote.","QuoteContactRelation.Update":"Fires when the link between a contact and a quote is updated.","QuoteContactRelation.Delete":"Fires when a contact is unlinked from a quote.","Product.*":"Subscribes to every product event: ProductCreate, ProductUpdate and ProductDelete.","Product.Create":"Fires when a product is created.","Product.Update":"Fires when a product is updated.","Product.Delete":"Fires when a product is deleted.","Note.*":"Subscribes to every note event: NoteCreate, NoteUpdate and NoteDelete.","Note.Create":"Fires when a note is created.","Note.Update":"Fires when a note is updated.","Note.Delete":"Fires when a note is deleted.","Currency.*":"Subscribes to every currency event: CurrencyCreate, CurrencyUpdate and CurrencyDelete.","Currency.Create":"Fires when a currency is created.","Currency.Update":"Fires when a currency is updated.","Currency.Delete":"Fires when a currency is deleted.","CurrencyExchangeRate.*":"Subscribes to every exchange rate event: CurrencyExchangeRateCreate, CurrencyExchangeRateUpdate and CurrencyExchangeRateDelete.","CurrencyExchangeRate.Create":"Fires when an exchange rate is created.","CurrencyExchangeRate.Update":"Fires when an exchange rate is updated.","CurrencyExchangeRate.Delete":"Fires when an exchange rate is deleted.","CurrencyExchangeRatesList.*":"Subscribes to every exchange rate list event: CurrencyExchangeRatesListCreate, CurrencyExchangeRatesListUpdate and CurrencyExchangeRatesListDelete.","CurrencyExchangeRatesList.Create":"Fires when an exchange rate list is created.","CurrencyExchangeRatesList.Update":"Fires when an exchange rate list is updated.","CurrencyExchangeRatesList.Delete":"Fires when an exchange rate list is deleted.","ProductPriceList.*":"Subscribes to every price list event: ProductPriceListCreate, ProductPriceListUpdate and ProductPriceListDelete.","ProductPriceList.Create":"Fires when a price list is created.","ProductPriceList.Update":"Fires when a price list is updated.","ProductPriceList.Delete":"Fires when a price list is deleted.","ProductPriceListPrice.*":"Subscribes to every price list price event: ProductPriceListPriceCreate, ProductPriceListPriceUpdate and ProductPriceListPriceDelete.","ProductPriceListPrice.Create":"Fires when a product price in a price list is created.","ProductPriceListPrice.Update":"Fires when a product price in a price list is updated.","ProductPriceListPrice.Delete":"Fires when a product price in a price list is deleted."}},"webhook_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent webhook."}}},"batchWebhookEventInput":{"description":"Field values of a WebhookEvent record to create, or to update when its id is set.","properties":{"event":{"type":"string","example":"*","enum":["*","Account.*","Account.Create","Account.Delete","Account.DocumentLinked","Account.OwnerChanged","Account.Update","ActivityRelation.*","ActivityRelation.Create","ActivityRelation.Delete","ActivityRelation.Update","Appointment.*","Appointment.Comment","Appointment.Create","Appointment.Delete","Appointment.DocumentLinked","Appointment.OwnerChanged","Appointment.Update","Contact.*","Contact.Create","Contact.Delete","Contact.DocumentLinked","Contact.OwnerChanged","Contact.Update","ContactAccountRelation.*","ContactAccountRelation.Create","ContactAccountRelation.Delete","ContactAccountRelation.Update","Currency.*","Currency.Create","Currency.Delete","Currency.Update","CurrencyExchangeRate.*","CurrencyExchangeRate.Create","CurrencyExchangeRate.Delete","CurrencyExchangeRate.Update","CurrencyExchangeRatesList.*","CurrencyExchangeRatesList.Create","CurrencyExchangeRatesList.Delete","CurrencyExchangeRatesList.Update","CustomEntity.*","CustomEntity.Create","CustomEntity.Delete","CustomEntity.DocumentLinked","CustomEntity.OwnerChanged","CustomEntity.Update","Email.*","Email.Create","Email.Delete","Email.DocumentLinked","Email.Update","Lead.*","Lead.BackToLead","Lead.Create","Lead.Delete","Lead.DocumentLinked","Lead.Lost","Lead.OwnerChanged","Lead.Update","LeadOpptyAccountRelation.*","LeadOpptyAccountRelation.Create","LeadOpptyAccountRelation.Delete","LeadOpptyAccountRelation.Update","LeadOpptyContactRelation.*","LeadOpptyContactRelation.Create","LeadOpptyContactRelation.Delete","LeadOpptyContactRelation.Update","Memo.*","Memo.Comment","Memo.Create","Memo.Delete","Memo.DocumentLinked","Memo.Update","Message.*","Message.Create","Message.Delete","Message.DocumentLinked","Message.Update","Note.*","Note.Create","Note.Delete","Note.Update","Opportunity.*","Opportunity.Create","Opportunity.Delete","Opportunity.DocumentLinked","Opportunity.Lost","Opportunity.Move","Opportunity.OwnerChanged","Opportunity.Qualify","Opportunity.Update","Opportunity.Won","OpptyProductRelation.*","OpptyProductRelation.Create","OpptyProductRelation.Delete","OpptyProductRelation.Update","Product.*","Product.Create","Product.Delete","Product.Update","ProductPriceList.*","ProductPriceList.Create","ProductPriceList.Delete","ProductPriceList.Update","ProductPriceListPrice.*","ProductPriceListPrice.Create","ProductPriceListPrice.Delete","ProductPriceListPrice.Update","Project.*","Project.Create","Project.Delete","Project.DocumentLinked","Project.OwnerChanged","Project.Update","Quote.*","Quote.Create","Quote.Delete","Quote.DocumentLinked","Quote.Lost","Quote.Move","Quote.OwnerChanged","Quote.Update","Quote.Won","QuoteAccountRelation.*","QuoteAccountRelation.Create","QuoteAccountRelation.Delete","QuoteAccountRelation.Update","QuoteContactRelation.*","QuoteContactRelation.Create","QuoteContactRelation.Delete","QuoteContactRelation.Update","Task.*","Task.Comment","Task.Create","Task.Delete","Task.DocumentLinked","Task.OwnerChanged","Task.Update"],"description":"Event type the parent webhook subscribes to (e.g. Account.Create, Lead.Update). The webhook fires whenever an event of this type occurs in the team space.","x-enumDescriptions":{"*":"Subscribes to every event of every entity in this list.","Lead.*":"Subscribes to every lead event: LeadCreate, LeadUpdate, LeadDelete, LeadBackToLead, LeadOwnerChanged, LeadDocumentLinked and LeadLost.","Lead.Create":"Fires when a lead is created.","Lead.Update":"Fires when a lead is updated.","Lead.Delete":"Fires when a lead is deleted.","Lead.BackToLead":"Fires when an opportunity is moved back to a lead; the event carries the resulting lead.","Lead.OwnerChanged":"Fires when the owner of a lead changes, including when it is created with an owner other than the user who created it.","Lead.DocumentLinked":"Fires when a document is linked to a lead; the event includes the document as the related entity.","Lead.Lost":"Fires when a lead is archived as lost.","Opportunity.*":"Subscribes to every opportunity event: OpportunityCreate, OpportunityUpdate, OpportunityDelete, OpportunityMove, OpportunityQualify, OpportunityOwnerChanged, OpportunityDocumentLinked, OpportunityWon and OpportunityLost.","Opportunity.Create":"Fires when an opportunity is created.","Opportunity.Update":"Fires when an opportunity is updated.","Opportunity.Delete":"Fires when an opportunity is deleted.","Opportunity.Move":"Fires when an opportunity moves to a different sales step; winning an opportunity also raises this event.","Opportunity.Qualify":"Fires when a lead is qualified into an opportunity; the event carries the new opportunity.","Opportunity.OwnerChanged":"Fires when the owner of an opportunity changes, including when it is created with an owner other than the user who created it.","Opportunity.DocumentLinked":"Fires when a document is linked to an opportunity; the event includes the document as the related entity.","Opportunity.Won":"Fires when an opportunity is created in or moved to the won step of its pipeline.","Opportunity.Lost":"Fires when an opportunity is archived as lost without reaching the won step.","Contact.*":"Subscribes to every contact event: ContactCreate, ContactUpdate, ContactDelete, ContactOwnerChanged and ContactDocumentLinked.","Contact.Create":"Fires when a contact is created.","Contact.Update":"Fires when a contact is updated.","Contact.Delete":"Fires when a contact is deleted.","Contact.OwnerChanged":"Fires when the owner of a contact changes, including when it is created with an owner other than the user who created it.","Contact.DocumentLinked":"Fires when a document is linked to a contact; the event includes the document as the related entity.","Account.*":"Subscribes to every account event: AccountCreate, AccountUpdate, AccountDelete, AccountOwnerChanged and AccountDocumentLinked.","Account.Create":"Fires when an account is created.","Account.Update":"Fires when an account is updated.","Account.Delete":"Fires when an account is deleted.","Account.OwnerChanged":"Fires when the owner of an account changes, including when it is created with an owner other than the user who created it.","Account.DocumentLinked":"Fires when a document is linked to an account; the event includes the document as the related entity.","Task.*":"Subscribes to every task event: TaskCreate, TaskUpdate, TaskDelete, TaskOwnerChanged, TaskDocumentLinked and TaskComment.","Task.Create":"Fires when a task is created.","Task.Update":"Fires when a task is updated.","Task.Delete":"Fires when a task is deleted.","Task.OwnerChanged":"Fires when the owner of a task changes, including when it is created with an owner other than the user who created it.","Task.DocumentLinked":"Fires when a document is linked to a task; the event includes the document as the related entity.","Task.Comment":"Fires when a comment is added to a task.","Appointment.*":"Subscribes to every appointment event: AppointmentCreate, AppointmentUpdate, AppointmentDelete, AppointmentOwnerChanged, AppointmentDocumentLinked and AppointmentComment.","Appointment.Create":"Fires when an appointment is created.","Appointment.Update":"Fires when an appointment is updated.","Appointment.Delete":"Fires when an appointment is deleted.","Appointment.OwnerChanged":"Fires when the owner of an appointment changes, including when it is created with an owner other than the user who created it.","Appointment.DocumentLinked":"Fires when a document is linked to an appointment; the event includes the document as the related entity.","Appointment.Comment":"Fires when a comment is added to an appointment.","Message.*":"Legacy subscription to all message events; memo and email changes are delivered as Memo and Email events instead.","Message.Create":"Legacy event that is no longer raised; use MemoCreate or EmailCreate instead.","Message.Update":"Legacy event that is no longer raised; use MemoUpdate or EmailUpdate instead.","Message.Delete":"Legacy event that is no longer raised; use MemoDelete or EmailDelete instead.","Message.DocumentLinked":"Legacy event that is no longer raised; use MemoDocumentLinked or EmailDocumentLinked instead.","Memo.*":"Subscribes to every memo event: MemoCreate, MemoUpdate, MemoDelete, MemoDocumentLinked and MemoComment.","Memo.Create":"Fires when a memo is created.","Memo.Update":"Fires when a memo is updated.","Memo.Delete":"Fires when a memo is deleted.","Memo.DocumentLinked":"Fires when a document is linked to a memo; the event includes the document as the related entity.","Memo.Comment":"Fires when a comment is added to a memo.","Email.*":"Subscribes to every email event: EmailCreate, EmailUpdate, EmailDelete and EmailDocumentLinked.","Email.Create":"Fires when an email is created.","Email.Update":"Fires when an email is updated.","Email.Delete":"Fires when an email is deleted.","Email.DocumentLinked":"Fires when a document is linked to an email; the event includes the document as the related entity.","OpptyProductRelation.*":"Subscribes to every opportunity product line event: OpptyProductRelationCreate, OpptyProductRelationUpdate and OpptyProductRelationDelete.","OpptyProductRelation.Create":"Fires when a product line of an opportunity is created.","OpptyProductRelation.Update":"Fires when a product line of an opportunity is updated.","OpptyProductRelation.Delete":"Fires when a product line of an opportunity is deleted.","Project.*":"Subscribes to every project event: ProjectCreate, ProjectUpdate, ProjectDelete, ProjectOwnerChanged and ProjectDocumentLinked.","Project.Create":"Fires when a project is created.","Project.Update":"Fires when a project is updated.","Project.Delete":"Fires when a project is deleted.","Project.OwnerChanged":"Fires when the owner of a project changes, including when it is created with an owner other than the user who created it.","Project.DocumentLinked":"Fires when a document is linked to a project; the event includes the document as the related entity.","Quote.*":"Subscribes to every quote event: QuoteCreate, QuoteUpdate, QuoteDelete, QuoteOwnerChanged, QuoteDocumentLinked, QuoteMove, QuoteWon and QuoteLost.","Quote.Create":"Fires when a quote is created.","Quote.Update":"Fires when a quote is updated.","Quote.Delete":"Fires when a quote is deleted.","Quote.OwnerChanged":"Fires when the owner of a quote changes, including when it is created with an owner other than the user who created it.","Quote.DocumentLinked":"Fires when a document is linked to a quote; the event includes the document as the related entity.","Quote.Move":"Fires when a quote moves to a different step of its quote process; winning a quote also raises this event.","Quote.Won":"Fires when a quote is created in or moved to the won (accepted) step of its quote process.","Quote.Lost":"Fires when a quote is archived as lost without reaching the won step.","CustomEntity.*":"Subscribes to every custom entity event: CustomEntityCreate, CustomEntityUpdate, CustomEntityDelete, CustomEntityOwnerChanged and CustomEntityDocumentLinked.","CustomEntity.Create":"Fires when a custom entity record is created.","CustomEntity.Update":"Fires when a custom entity record is updated.","CustomEntity.Delete":"Fires when a custom entity record is deleted.","CustomEntity.OwnerChanged":"Fires when the owner of a custom entity record changes, including when it is created with an owner other than the user who created it.","CustomEntity.DocumentLinked":"Fires when a document is linked to a custom entity record; the event includes the document as the related entity.","ContactAccountRelation.*":"Subscribes to every contact-account link event: ContactAccountRelationCreate, ContactAccountRelationUpdate and ContactAccountRelationDelete.","ContactAccountRelation.Create":"Fires when a contact is linked to an account.","ContactAccountRelation.Update":"Fires when the link between a contact and an account is updated.","ContactAccountRelation.Delete":"Fires when a contact is unlinked from an account.","LeadOpptyAccountRelation.*":"Subscribes to every lead/opportunity account link event: LeadOpptyAccountRelationCreate, LeadOpptyAccountRelationUpdate and LeadOpptyAccountRelationDelete.","LeadOpptyAccountRelation.Create":"Fires when an account is linked to a lead or opportunity.","LeadOpptyAccountRelation.Update":"Fires when the link between an account and a lead or opportunity is updated.","LeadOpptyAccountRelation.Delete":"Fires when an account is unlinked from a lead or opportunity.","LeadOpptyContactRelation.*":"Subscribes to every lead/opportunity contact link event: LeadOpptyContactRelationCreate, LeadOpptyContactRelationUpdate and LeadOpptyContactRelationDelete.","LeadOpptyContactRelation.Create":"Fires when a contact is linked to a lead or opportunity.","LeadOpptyContactRelation.Update":"Fires when the link between a contact and a lead or opportunity is updated.","LeadOpptyContactRelation.Delete":"Fires when a contact is unlinked from a lead or opportunity.","ActivityRelation.*":"Subscribes to every activity link event: ActivityRelationCreate, ActivityRelationUpdate and ActivityRelationDelete.","ActivityRelation.Create":"Fires when a task or appointment is linked to a record.","ActivityRelation.Update":"Fires when the link between a task or appointment and a record is updated.","ActivityRelation.Delete":"Fires when a task or appointment is unlinked from a record.","QuoteAccountRelation.*":"Subscribes to every quote-account link event: QuoteAccountRelationCreate, QuoteAccountRelationUpdate and QuoteAccountRelationDelete.","QuoteAccountRelation.Create":"Fires when an account is linked to a quote.","QuoteAccountRelation.Update":"Fires when the link between an account and a quote is updated.","QuoteAccountRelation.Delete":"Fires when an account is unlinked from a quote.","QuoteContactRelation.*":"Subscribes to every quote-contact link event: QuoteContactRelationCreate, QuoteContactRelationUpdate and QuoteContactRelationDelete.","QuoteContactRelation.Create":"Fires when a contact is linked to a quote.","QuoteContactRelation.Update":"Fires when the link between a contact and a quote is updated.","QuoteContactRelation.Delete":"Fires when a contact is unlinked from a quote.","Product.*":"Subscribes to every product event: ProductCreate, ProductUpdate and ProductDelete.","Product.Create":"Fires when a product is created.","Product.Update":"Fires when a product is updated.","Product.Delete":"Fires when a product is deleted.","Note.*":"Subscribes to every note event: NoteCreate, NoteUpdate and NoteDelete.","Note.Create":"Fires when a note is created.","Note.Update":"Fires when a note is updated.","Note.Delete":"Fires when a note is deleted.","Currency.*":"Subscribes to every currency event: CurrencyCreate, CurrencyUpdate and CurrencyDelete.","Currency.Create":"Fires when a currency is created.","Currency.Update":"Fires when a currency is updated.","Currency.Delete":"Fires when a currency is deleted.","CurrencyExchangeRate.*":"Subscribes to every exchange rate event: CurrencyExchangeRateCreate, CurrencyExchangeRateUpdate and CurrencyExchangeRateDelete.","CurrencyExchangeRate.Create":"Fires when an exchange rate is created.","CurrencyExchangeRate.Update":"Fires when an exchange rate is updated.","CurrencyExchangeRate.Delete":"Fires when an exchange rate is deleted.","CurrencyExchangeRatesList.*":"Subscribes to every exchange rate list event: CurrencyExchangeRatesListCreate, CurrencyExchangeRatesListUpdate and CurrencyExchangeRatesListDelete.","CurrencyExchangeRatesList.Create":"Fires when an exchange rate list is created.","CurrencyExchangeRatesList.Update":"Fires when an exchange rate list is updated.","CurrencyExchangeRatesList.Delete":"Fires when an exchange rate list is deleted.","ProductPriceList.*":"Subscribes to every price list event: ProductPriceListCreate, ProductPriceListUpdate and ProductPriceListDelete.","ProductPriceList.Create":"Fires when a price list is created.","ProductPriceList.Update":"Fires when a price list is updated.","ProductPriceList.Delete":"Fires when a price list is deleted.","ProductPriceListPrice.*":"Subscribes to every price list price event: ProductPriceListPriceCreate, ProductPriceListPriceUpdate and ProductPriceListPriceDelete.","ProductPriceListPrice.Create":"Fires when a product price in a price list is created.","ProductPriceListPrice.Update":"Fires when a product price in a price list is updated.","ProductPriceListPrice.Delete":"Fires when a product price in a price list is deleted."}},"webhook_id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Id of the parent webhook."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}},"Webresource":{"description":"Web page embedded in the app for records of an entity, with its URL filled from the record's field values.","properties":{"is_delete_protected":{"type":"boolean","example":false,"description":"True when the record is protected against deletion because it must always exist in the space. Deleting a record that is not protected can still fail on other checks. Read-only.","readOnly":true},"has_draft":{"type":"boolean","example":false,"description":"True when the record has unpublished draft changes, including pending translation changes, that can be published."},"id":{"type":"string","format":"uuid","example":"01234567-abcd-dcba-ffff-000000000000","description":"Unique identifier of entity.","readOnly":true},"is_deleted":{"type":"boolean","example":false,"description":"Specifies if the entity is considered deleted.","readOnly":true},"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"display_param":{"type":"string","example":1,"enum":[1,2],"description":"Bit flag controlling how the web resource is displayed (e.g. full-screen, in a tab).","x-enumDescriptions":{"1":"The web resource is displayed in full-screen mode.","2":"The web resource is hidden when all record values inserted into its URL are empty."}},"entity":{"type":"string","example":"string","description":"Name of the entity the web resource is attached to (e.g. \"Account\", \"Lead\")."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"request_method":{"type":"integer","description":"HTTP method (Get or Post) used to open the url of the web resource.\n\nInteger enum value: 1 - Get, 2 - Post","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The URL is opened with a GET request.","2":"The URL is opened with a POST request."}},"url":{"type":"string","example":"string","description":"URL template for the embedded web resource. May reference field values via \"{#<field_id>}\" placeholders that are substituted with the current record's values."},"is_published":{"type":"boolean","example":false,"description":"True when the web resource is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["is_delete_protected","has_draft","id","display_param","entity","name"]},"createWebresourceInput":{"description":"Field values of a new Webresource record.","properties":{"modified":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Last modification time.","readOnly":true},"created":{"type":"string","format":"date-time","example":"2019-01-01T00:00:00","description":"Creation time.","readOnly":true},"display_param":{"type":"string","example":1,"enum":[1,2],"description":"Bit flag controlling how the web resource is displayed (e.g. full-screen, in a tab).","x-enumDescriptions":{"1":"The web resource is displayed in full-screen mode.","2":"The web resource is hidden when all record values inserted into its URL are empty."}},"entity":{"type":"string","example":"string","description":"Name of the entity the web resource is attached to (e.g. \"Account\", \"Lead\")."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"request_method":{"type":"integer","description":"HTTP method (Get or Post) used to open the url of the web resource.\n\nInteger enum value: 1 - Get, 2 - Post","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The URL is opened with a GET request.","2":"The URL is opened with a POST request."}},"url":{"type":"string","example":"string","description":"URL template for the embedded web resource. May reference field values via \"{#<field_id>}\" placeholders that are substituted with the current record's values."},"is_published":{"type":"boolean","example":false,"description":"True when the web resource is published; false while it exists only as an unpublished draft.","readOnly":true},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}},"required":["display_param","entity","name"]},"updateWebresourceInput":{"description":"Field values to change on a Webresource record; fields left out keep their values.","properties":{"display_param":{"type":"string","example":1,"enum":[1,2],"description":"Bit flag controlling how the web resource is displayed (e.g. full-screen, in a tab).","x-enumDescriptions":{"1":"The web resource is displayed in full-screen mode.","2":"The web resource is hidden when all record values inserted into its URL are empty."}},"entity":{"type":"string","example":"string","description":"Name of the entity the web resource is attached to (e.g. \"Account\", \"Lead\")."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"request_method":{"type":"integer","description":"HTTP method (Get or Post) used to open the url of the web resource.\n\nInteger enum value: 1 - Get, 2 - Post","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The URL is opened with a GET request.","2":"The URL is opened with a POST request."}},"url":{"type":"string","example":"string","description":"URL template for the embedded web resource. May reference field values via \"{#<field_id>}\" placeholders that are substituted with the current record's values."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."}}},"batchWebresourceInput":{"description":"Field values of a Webresource record to create, or to update when its id is set.","properties":{"display_param":{"type":"string","example":1,"enum":[1,2],"description":"Bit flag controlling how the web resource is displayed (e.g. full-screen, in a tab).","x-enumDescriptions":{"1":"The web resource is displayed in full-screen mode.","2":"The web resource is hidden when all record values inserted into its URL are empty."}},"entity":{"type":"string","example":"string","description":"Name of the entity the web resource is attached to (e.g. \"Account\", \"Lead\")."},"name":{"type":"string","example":"string","description":"Name of the entity and its default text representation."},"request_method":{"type":"integer","description":"HTTP method (Get or Post) used to open the url of the web resource.\n\nInteger enum value: 1 - Get, 2 - Post","example":1,"enum":[1,2],"x-enumDescriptions":{"1":"The URL is opened with a GET request.","2":"The URL is opened with a POST request."}},"url":{"type":"string","example":"string","description":"URL template for the embedded web resource. May reference field values via \"{#<field_id>}\" placeholders that are substituted with the current record's values."},"revision":{"type":"integer","format":"int32","example":1,"description":"Revision when entity was lastly changed."},"id":{"description":"ID of object to update.","type":"string","format":"uuid"}}}},"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic","description":"The User Name and Password of an API application, shown in the app under Show Access. Credentials belong to one application in one space and carry that application's permissions. Any authentication failure answers HTTP 401 with code 401, ERROR_UNAUTHORIZED."}},"responses":{"BadRequest":{"description":"Bad request: a bad or unknown parameter (codes 117, 118), a missing permission (code 50), conflicting data (code 2002) or any other API error. The REST API answers 400 where others answer 403 or 409; check `code`.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Unauthorized":{"description":"Not authenticated: missing or wrong credentials, a credential of another space, or an expired token (code 401, ERROR_UNAUTHORIZED).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotFound":{"description":"No such record or entity (code 143 ERROR_NO_ENTITY, or 2006 ERROR_UNKNOWN_TYPE).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotFoundInBatch":{"description":"An id does not exist (code 143). With rollback-method 0, the default, the whole call fails.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ValidationFailed":{"description":"Validation failed (code 40000, with the failing fields) or a required parameter is missing (code 119). By default one failed item fails a whole batch and nothing is written.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"TooManyRequests":{"description":"Too many requests (code 182). Wait for the seconds in Retry-After, then retry.","headers":{"Retry-After":{"description":"Seconds to wait before retrying, when the limiter computed one.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ServerError":{"description":"Unexpected server error (code 1000, ERROR_UNKNOWN).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"servers":[{"url":"https://{region}.api.coevera.com/api/v100/rest/spaces/{space_id}","description":"Your space's REST API. Calling another region's host still works; the request is proxied, only slower.","variables":{"region":{"description":"The region your space lives in, shown in the app under Show Access and returned by the discovery endpoint.","enum":["us-east","eu-central","ca-central","ap-southeast"],"default":"us-east"},"space_id":{"description":"Your space ID, shown in the app under Show Access.","default":"your_space_id"}}}],"security":[{"basicAuth":[]}],"x-coevera-entities":{"Accounts":{"summary":"Companies and organisations you sell to. An account owns its contact relations, opportunities and activities.","description":"Each account has an owner (a Client, the API's name for a user) and a sales unit, which decide who can see it. Contacts are linked to accounts through ContactAccountRelations. Accounts and contacts are the two entities that can be merged."},"Contacts":{"summary":"People you sell to. A contact can be linked to several accounts, and to leads, opportunities and activities.","description":"A contact's links to accounts are ContactAccountRelations. Duplicate contacts can be merged into one.","notes":["A create needs `first_name` or `last_name` as well as `owner_id`, although the spec marks only `owner_id` as required. Without either name the API answers HTTP 422 with code 119, *At least one of the fields [first_name, last_name] is required.* (docs sandbox, 2026-10-14)."]},"Leads":{"summary":"Potential deals before they are qualified. A lead moves through the steps of a lead process and becomes an opportunity when it is qualified.","description":"Qualifying a lead is a GraphQL action; REST has no action routes. A qualified lead becomes an opportunity with the same id.","notes":["A create needs a sales unit as well as `name`: send `owner_id`, and the lead takes the owner's unit, or `unit_id` alone, and the lead waits unassigned in that unit. Without either the API answers HTTP 422, although the spec marks only `name` as required (docs sandbox, 2026-10-15)."]},"Opportunities":{"summary":"Deals in a sales pipeline, with a value, a closing date and a step. Winning is a move to the last step; losing is archiving.","description":"An opportunity sits on a step of a pipeline (`step_id`). A REST update of `step_id`, `owner_id` or `is_archived` records the same history and webhook events as the GraphQL move, change-owner and archive actions, but skips their extras, such as completing activities or the lost form's required fields.","notes":["A create needs `account_relations`, with one relation marked `is_primary: true`, although the spec does not mark it as required. Without it the API answers HTTP 422 (docs sandbox, 2026-10-15).","`value` is a currency object. Send `currency_id` and `base_value`: with `base_value` set, `value_foreign` is computed. Without `currency_id` the API answers HTTP 422, *Missing parameter currency_id in field value* (docs sandbox, 2026-10-15).","`status` is 1 Open, 2 Lost or 3 Won, and read-only: an opportunity on its pipeline's last step is won, and one archived on another step is lost."]},"Activities":{"summary":"Tasks and appointments in one read-only list. Create and change them through Tasks and Appointments.","description":"Use Activities to read a timeline across both kinds; every write goes through the Tasks or Appointments entity."},"Products":{"summary":"The items you sell, with their category, type and prices. Products become line items on opportunities and quotes.","description":"Prices live in ProductPriceLists and ProductPriceListPrices; line items on opportunities are OpptyProductRelations.","notes":["A create needs `unit_symbol` as well as `name`, although the spec marks only `name` as required: without it the API answers HTTP 422. `sku` is unique in the space: a second product with the same `sku` is refused with HTTP 400 (docs sandbox, 2026-10-15)."]},"Quotes":{"summary":"Priced offers for a customer, with line items and a total, moving through the steps of a quote process.","description":"A create needs `name`, `owner_id`, `step_id` (a step of a quote process) and `total_amount`.","notes":["`total_amount` is a currency object. The spec marks `base_value`, `currency_id` and `value_foreign` as required; the API needs only one of them."]},"Webhooks":{"summary":"Subscriptions that POST a JSON payload to your URL when records change, for the events you choose.","description":"Each webhook has a target `url` and a list of `events`, such as Account.Update. Set `signature` to have every delivery signed with HMAC-SHA256 in the WebHook-Signature header. A delivery times out after 10 seconds and is retried with backoff."}},"x-coevera-families":[{"id":"accounts","name":"Accounts","description":"Companies you sell to, their types, roles and relations between accounts.","main":["Accounts","AccountTypes","AccountRelations","AccountRoles"],"entities":["Accounts","AccountDataExRelations","AccountKPIs","AccountRelationLabels","AccountRelationTypes","AccountRelations","AccountRoles","AccountSharingClientRelations","AccountSharingSalesUnitRelations","AccountSocialRelations","AccountTypes","ParentAccountRelationTypes"]},{"id":"contacts","name":"Contacts","description":"People you sell to, their links to accounts and relations between contacts.","main":["Contacts","ContactAccountRelations","ContactTypes","ContactRelations"],"entities":["Contacts","ContactAccountAccountRoleRelations","ContactAccountRelations","ContactDataExRelations","ContactKPIs","ContactRelationLabels","ContactRelationTypes","ContactRelations","ContactSharingClientRelations","ContactSharingSalesUnitRelations","ContactSocialRelations","ContactTypes","GhostContacts","GhostContactAccountAccountRoleRelations","GhostContactAccountRelations"]},{"id":"leads-and-opportunities","name":"Leads and opportunities","description":"Leads, opportunities, their types and revenue schedules, and the accounts and contacts on each deal.","main":["Leads","Opportunities","LeadOpptyContactRelations","OpptyRevenueSchedules"],"entities":["Leads","Opportunities","LeadOppties","LeadOpptyAccountRelations","LeadOpptyContactGroupRelations","LeadOpptyContactRelations","LeadOpptyContactSalesRoleRelations","LeadOpptyDataExRelations","LeadOpptyKPIs","LeadOpptySharingClientRelations","LeadOpptySharingSalesUnitRelations","LeadOpptyStepCheckListRelations","LeadTypes","OpportunityTypes","OpptyRevenueSchedulePeriods","OpptyRevenueSchedules","GhostLeadOpptyContactRelations","GhostLeadOpptyContactSalesRoleRelations"]},{"id":"activities","name":"Activities and communication","description":"Tasks, appointments, calls, memos, emails, text messages and their templates.","main":["Activities","Tasks","Appointments","Memos","Emails","Calls"],"entities":["Activities","ActivityComments","ActivityDataExRelations","ActivityKPIs","ActivityRelations","Appointments","AppointmentClientInviteesRelations","AppointmentContactInviteesRelations","AppointmentReminders","AppointmentSchedules","AppointmentTypes","Tasks","TaskReminders","TaskSharingClientRelations","TaskSharingSalesUnitRelations","TaskTypes","Memos","MemoComments","Emails","EmailContentSharingClientRelations","EmailContentSharingSalesUnitRelations","EmailEvents","EmailLabelRelations","EmailLabels","EmailMailboxRelations","EmailTemplateFolders","EmailTemplateSharingClientRelations","EmailTemplateSharingSalesUnitRelations","EmailTemplates","EmailThreadMailboxClientReadStates","MessageRelations","MessageSharingClientRelations","MessageSharingSalesUnitRelations","TextMessages","TextMessageConversations","TextMessageConversationRelationses","Calls","ChatConversations","Phones","UnsubscribedPhones","CompanyEmails"]},{"id":"products","name":"Products, pricing, quotes and currencies","description":"Products, price lists, line items, quotes and currencies with their exchange rates.","main":["Products","ProductPriceLists","OpptyProductRelations","Quotes","Currencies"],"entities":["Products","ProductCategories","ProductDataExRelations","ProductPipelineRelations","ProductPriceListPrices","ProductPriceLists","ProductTypes","AccountProductPricings","OpptyProductRelations","OpptyProductRelationDataExRelations","OpptyProductRelationRevenueSchedulePeriods","OpptyProductRelationRevenueSchedules","OpptyProductRelationTypes","Quotes","QuoteAccountRelations","QuoteContactRelations","QuoteDataExRelations","QuoteKPIs","QuoteSharingClientRelations","QuoteSharingSalesUnitRelations","QuoteTypes","Currencies","CurrencyExchangeRates","CurrencyExchangeRatesLists"]},{"id":"documents","name":"Documents and media","description":"Files, folders and templates, their links to records, media and notes.","main":["CloudObjects","CloudObjectRelations","CloudObjectFolders","Notes"],"entities":["CloudObjects","CloudObjectFolders","CloudObjectRelations","CloudObjectStepRelations","CloudObjectTemplates","Medias","Notes"]},{"id":"users","name":"Users, roles, units and permissions","description":"Users (Clients), sales units, sales roles, roles (MasterRights), profiles and API applications.","main":["Clients","SalesUnits","SalesRoles","MasterRights","ApiAccesses"],"entities":["Clients","ClientExcludedOppties","ClientFavorites","ClientSettings","ClientStoryReads","SalesUnits","SalesUnitClientRelations","SalesRoles","MasterRights","AllowedAccountTypes","AllowedAppointmentTypes","AllowedCompanyEmails","AllowedCompanyPhones","AllowedContactTypes","AllowedLeadTypes","AllowedPipelines","AllowedQuoteTypes","AllowedTaskTypes","Profiles","ProfileRelations","ProfileSharingClientRelations","ProfileSharingSalesUnitRelations","ApiAccesses"]},{"id":"pipelines","name":"Pipelines, steps and processes","description":"Pipelines and their steps, step checklists, lead and quote processes, and timeframes.","main":["Pipelines","Steps","StepChecklists","QuoteProcesses"],"entities":["Pipelines","Steps","StepChecklists","StepChecklistSalesRoleRelations","LeadProcesses","QuoteProcesses","Timeframes"]},{"id":"fields","name":"Fields and custom entities","description":"Fields and their permissions, entities and their settings, custom entities, forms, lookup data and translations.","main":["Fields","Entities","{custom_entity_api_name}","Data","FormViews"],"entities":["Fields","FieldMappings","FieldPermissions","FieldSequences","Entities","EntitySettingses","{custom_entity_api_name}","{custom_entity_type_api_name}","FormViews","FormViewSharingClientRelations","FormViewSharingSalesUnitRelations","Translations","Data","Types","ImportMappingMasks","InterfacePreviews","Webresources"]},{"id":"automation","name":"Webhooks and automation","description":"Webhooks, automation processes, approvals, email sequences and recurrences.","main":["Webhooks","Processes","ApprovalProcesses","EmailSequences"],"entities":["Webhooks","WebhookEvents","Processes","ProcessTemplates","ProcessActivityLogs","ProcessActivityLogLines","ApprovalProcesses","Approvals","ApprovalApprovers","ApprovalProcessActivityLogLines","EmailSequences","EmailSequenceEnrolleds","EmailSequenceActivityLogs","EmailSequenceActivityLogLines","OpptyRecurrences","TaskRecurrences","ReportSchedules"]},{"id":"projects","name":"Projects, targets, forecasts and reports","description":"Projects and their objectives, sales targets, forecasts, reports and solutions.","main":["Projects","Targets","Forecasts","Reports"],"entities":["Projects","ProjectContactRelations","ProjectDataExRelations","ProjectKPIs","ProjectObjectives","ProjectSharingClientRelations","ProjectSharingSalesUnitRelations","ProjectTypes","Targets","TargetRelations","Forecasts","Reports","ReportFolders","ReportSharingClientRelations","ReportSharingSalesUnitRelations","Solutions","SolutionTemplates"]},{"id":"online-forms","name":"Online forms","description":"Online forms, their types and styles, the records they create and their activity log.","main":["OnlineForms","OnlineFormTypes","OnlineFormStyles"],"entities":["OnlineForms","OnlineFormActivityLogLines","OnlineFormDataExRelations","OnlineFormRelations","OnlineFormStyles","OnlineFormTypeEmailRelations","OnlineFormTypes"]},{"id":"system","name":"System: scoring, health, tags, countries","description":"Scoring, fitness and health indicators, tags and countries.","main":["EntityScorings","EntityHealths","Tags"],"entities":["EntityScorings","EntityFitnesses","EntityFitnessIndicators","EntityHealths","Tags","TagRelations","CountryCrms"]}]}