Codat Platform API

The Platform API API from Codat — 0 operation(s) for platform api.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/codat-platform-api-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

codat-platform-api-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Platform API
  version: 3.0.0
  summary: Platform API
  description: "An API for the common components of all of Codat's products.\n\nThese end points cover creating and managing your companies, data connections, and integrations.\n\n[Read about the building blocks of Codat...](https://docs.codat.io/core-concepts/companies) | [See our OpenAPI spec](https://github.com/codatio/oas) \n\n---\n<!-- Start Codat Tags Table -->\n## Endpoints\n\n| Endpoints | Description |\n| :- |:- |\n| Companies | Create and manage your SMB users' companies. |\n| Connections | Create new and manage existing data connections for a company. |\n| Connection management | Configure connection management UI and retrieve access tokens for authentication. |\n| Webhooks | Create and manage webhooks that listen to Codat's events. |\n| Integrations | Get a list of integrations supported by Codat and their logos. |\n| Refresh data | Initiate data refreshes, view pull status and history. |\n| Settings | Manage company profile configuration, sync settings, and API keys. |\n| Push data | Initiate and monitor Create, Update, and Delete operations. |\n| Supplemental data | Configure and pull additional data you can include in Codat's standard data types. |\n| Custom data type | Configure and pull additional data types that are not included in Codat's standardized data model. |\n<!-- End Codat Tags Table -->"
  contact:
    name: Codat
    email: support@codat.io
  termsOfService: https://www.codat.io/legals/
servers:
- description: Production
  url: https://api.codat.io
security:
- auth_header: []
tags:
- name: Platform API
paths: {}
webhooks:
  company.created:
    post:
      description: Called when a company is created in Codat.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CompanyWebhook'
            examples:
              Company created:
                value:
                  id: ba29118f-5406-4e59-b05c-ba307ca38d01
                  eventType: company.created
                  generatedDate: '2024-08-08T17:10:34.015Z'
                  payload:
                    id: 0498e921-9b53-4396-a412-4f2f5983b0a2
                    name: Bank of Dave
                    description: Requested a loan for refurb.
                    redirect: https://link.codat.io/company/0498e921-9b53-4396-a412-4f2f5983b0a2
                    lastSync: '2022-01-01T12:00:00.000Z'
                    created: '2022-01-01T12:00:00.000Z'
                    tags:
                      customerRegion: us
                      uid: 335a086e-8563-4b03-94e3-39544225ecb6
      responses:
        '200':
          description: Return a 200 status to indicate that the webhook was received successfully.
      tags:
      - Platform API
  company.deleted:
    post:
      description: Called when a company is deleted in Codat.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CompanyWebhook'
            examples:
              Company deleted:
                value:
                  id: ba29118f-5406-4e59-b05c-ba307ca38d01
                  eventType: company.deleted
                  generatedDate: '2024-08-08T17:10:34.015Z'
                  payload:
                    id: 0498e921-9b53-4396-a412-4f2f5983b0a2
                    name: Bank of Dave
                    description: Requested a loan for refurb.
                    redirect: https://link.codat.io/company/0498e921-9b53-4396-a412-4f2f5983b0a2
                    lastSync: '2022-01-01T12:00:00.000Z'
                    created: '2022-01-01T12:00:00.000Z'
                    tags:
                      customerRegion: uk
                      uid: f6b0c253-16c7-4da1-a0c5-9c871e9c9d6c
      responses:
        '200':
          description: Return a 200 status to indicate that the webhook was received successfully.
      tags:
      - Platform API
  connection.created:
    post:
      description: Called when a connection is created by the SMB.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConnectionWebhook'
            examples:
              Connection created:
                value:
                  id: ba29118f-5406-4e59-b05c-ba307ca38d01
                  eventType: connection.created
                  generatedDate: '2024-08-08T17:10:34.015Z'
                  payload:
                    referenceCompany:
                      id: 0498e921-9b53-4396-a412-4f2f5983b0a2
                      name: Bank of Dave
                      description: internal_id_mxO7rLfo
                      links:
                        portal: https://app.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/summary
                      tags:
                        customerRegion: us
                        uid: 335a086e-8563-4b03-94e3-39544225ecb6
                    connection:
                      id: ee2eb431-c0fa-4dc9-93fa-d29781c12bcd
                      integrationId: bf083d72-62c7-493e-aec9-81b4dbba7e2c
                      integrationKey: dfxm
                      sourceId: bdd831ce-eebd-4896-89a7-20e5ee8989ee
                      platformName: Basiq
                      linkUrl: https://link-api.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start
                      status: PendingAuth
                      lastSync: '2022-10-27T10:22:43.6464237Z'
                      created: '2022-10-27T09:53:29Z'
                      sourceType: Banking
      responses:
        '200':
          description: Return a 200 status to indicate that the webhook was received successfully.
      tags:
      - Platform API
  connection.connected:
    post:
      description: Called when a connection is successfully linked by the SMB.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConnectionWebhook'
            examples:
              Connection connected:
                value:
                  id: ba29118f-5406-4e59-b05c-ba307ca38d01
                  eventType: connection.connected
                  generatedDate: '2024-08-08T17:10:34.015Z'
                  payload:
                    referenceCompany:
                      id: 0498e921-9b53-4396-a412-4f2f5983b0a2
                      name: Bank of Dave
                      description: internal_id_mxO7rLfo
                      links:
                        portal: https://app.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/summary
                      tags:
                        customerRegion: us
                        uid: 335a086e-8563-4b03-94e3-39544225ecb6
                    connection:
                      id: ee2eb431-c0fa-4dc9-93fa-d29781c12bcd
                      integrationId: bf083d72-62c7-493e-aec9-81b4dbba7e2c
                      integrationKey: dfxm
                      sourceId: bdd831ce-eebd-4896-89a7-20e5ee8989ee
                      platformName: Basiq
                      linkUrl: https://link-api.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start
                      status: Linked
                      lastSync: '2022-10-27T10:22:43.6464237Z'
                      created: '2022-10-27T09:53:29Z'
                      sourceType: Banking
      responses:
        '200':
          description: Return a 200 status to indicate that the webhook was received successfully.
      tags:
      - Platform API
  connection.failed:
    post:
      description: Called when a connection failed linking to the SMB.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConnectionWebhook'
            examples:
              Connection failed:
                value:
                  id: ba29118f-5406-4e59-b05c-ba307ca38d01
                  eventType: connection.failed
                  generatedDate: '2024-08-08T17:10:34.015Z'
                  payload:
                    referenceCompany:
                      id: 0498e921-9b53-4396-a412-4f2f5983b0a2
                      name: Bank of Dave
                      description: internal_id_mxO7rLfo
                      links:
                        portal: https://app.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/summary
                      tags:
                        customerRegion: us
                        uid: 335a086e-8563-4b03-94e3-39544225ecb6
                    connection:
                      id: ee2eb431-c0fa-4dc9-93fa-d29781c12bcd
                      integrationId: bf083d72-62c7-493e-aec9-81b4dbba7e2c
                      integrationKey: dfxm
                      sourceId: bdd831ce-eebd-4896-89a7-20e5ee8989ee
                      platformName: Basiq
                      linkUrl: https://link-api.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start
                      status: PendingAuth
                      created: '2022-10-27T09:53:29Z'
                      sourceType: Banking
                      dataConnectionErrors:
                      - statusCode: '403'
                        statusText: User cancelled linking
                        errorMessage: User cancelled
                        erroredOnUtc: '2022-10-27T09:53:29Z'
                        status: Active
      responses:
        '200':
          description: Return a 200 status to indicate that the webhook was received successfully.
      tags:
      - Platform API
  connection.disconnected:
    post:
      description: Called when a connection is disconnected either due to being unlinked or de-authorized by the SMB or integration.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConnectionWebhook'
            examples:
              Unlinked:
                value:
                  id: ba29118f-5406-4e59-b05c-ba307ca38d01
                  eventType: connection.disconnected
                  generatedDate: '2024-08-08T17:10:34.015Z'
                  payload:
                    referenceCompany:
                      id: 0498e921-9b53-4396-a412-4f2f5983b0a2
                      name: Bank of Dave
                      description: internal_id_mxO7rLfo
                      links:
                        portal: https://app.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/summary
                      tags:
                        customerRegion: us
                        uid: 335a086e-8563-4b03-94e3-39544225ecb6
                    connection:
                      id: ee2eb431-c0fa-4dc9-93fa-d29781c12bcd
                      integrationId: bf083d72-62c7-493e-aec9-81b4dbba7e2c
                      integrationKey: dfxm
                      sourceId: bdd831ce-eebd-4896-89a7-20e5ee8989ee
                      platformName: Basiq
                      linkUrl: https://link-api.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start
                      status: Unlinked
                      lastSync: '2022-10-27T10:22:43.6464237Z'
                      created: '2022-10-27T09:53:29Z'
                      sourceType: Banking
              De-authorized:
                value:
                  id: ba29118f-5406-4e59-b05c-ba307ca38d01
                  eventType: connection.disconnected
                  generatedDate: '2024-08-08T17:10:34.015Z'
                  payload:
                    referenceCompany:
                      id: 0498e921-9b53-4396-a412-4f2f5983b0a2
                      name: Bank of Dave
                      description: internal_id_mxO7rLfo
                      links:
                        portal: https://app.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/summary
                      tags:
                        customerRegion: us
                        uid: 335a086e-8563-4b03-94e3-39544225ecb6
                    connection:
                      id: ee2eb431-c0fa-4dc9-93fa-d29781c12bcd
                      integrationId: bf083d72-62c7-493e-aec9-81b4dbba7e2c
                      integrationKey: dfxm
                      sourceId: bdd831ce-eebd-4896-89a7-20e5ee8989ee
                      platformName: Basiq
                      linkUrl: https://link-api.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start
                      status: Deauthorized
                      lastSync: '2022-10-27T10:22:43.6464237Z'
                      created: '2022-10-27T09:53:29Z'
                      sourceType: Banking
                      dataConnectionErrors:
                      - statusCode: '401'
                        statusText: The integration de-authorized access to the connection.
                        errorMessage: The integration de-authorized access to the connection.
                        erroredOnUtc: '2022-12-27T09:53:29Z'
                        status: Active
      responses:
        '200':
          description: Return a 200 status to indicate that the webhook was received successfully.
      tags:
      - Platform API
  connection.reconnected:
    post:
      description: Called when a connection is reconnected after becoming disconnected.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConnectionWebhook'
            examples:
              Reconnected:
                value:
                  id: ba29118f-5406-4e59-b05c-ba307ca38d01
                  eventType: connection.reconnected
                  generatedDate: '2024-08-08T17:10:34.015Z'
                  payload:
                    referenceCompany:
                      id: 0498e921-9b53-4396-a412-4f2f5983b0a2
                      name: Bank of Dave
                      description: internal_id_mxO7rLfo
                      links:
                        portal: https://app.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/summary
                      tags:
                        customerRegion: us
                        uid: 335a086e-8563-4b03-94e3-39544225ecb6
                    connection:
                      id: ee2eb431-c0fa-4dc9-93fa-d29781c12bcd
                      integrationId: bf083d72-62c7-493e-aec9-81b4dbba7e2c
                      integrationKey: dfxm
                      sourceId: bdd831ce-eebd-4896-89a7-20e5ee8989ee
                      platformName: Basiq
                      linkUrl: https://link-api.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start
                      status: Linked
                      lastSync: '2022-10-27T10:22:43.6464237Z'
                      created: '2022-10-27T09:53:29Z'
                      sourceType: Banking
      responses:
        '200':
          description: Return a 200 status to indicate that the webhook was received successfully.
      tags:
      - Platform API
  connection.deleted:
    post:
      description: Called when a connection is deleted.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConnectionWebhook'
            examples:
              Deleted:
                value:
                  id: ba29118f-5406-4e59-b05c-ba307ca38d01
                  eventType: connection.deleted
                  generatedDate: '2024-08-08T17:10:34.015Z'
                  payload:
                    referenceCompany:
                      id: 0498e921-9b53-4396-a412-4f2f5983b0a2
                      name: Bank of Dave
                      description: internal_id_mxO7rLfo
                      links:
                        portal: https://app.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/summary
                      tags:
                        customerRegion: us
                        uid: 335a086e-8563-4b03-94e3-39544225ecb6
                    connection:
                      id: ee2eb431-c0fa-4dc9-93fa-d29781c12bcd
                      integrationId: bf083d72-62c7-493e-aec9-81b4dbba7e2c
                      integrationKey: dfxm
                      sourceId: bdd831ce-eebd-4896-89a7-20e5ee8989ee
                      platformName: Basiq
                      linkUrl: https://link-api.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/connections/ee2eb431-c0fa-4dc9-93fa-d29781c12bcd/start
                      status: Linked
                      lastSync: '2022-10-27T10:22:43.6464237Z'
                      created: '2022-10-27T09:53:29Z'
                      sourceType: Banking
      responses:
        '200':
          description: Return a 200 status to indicate that the webhook was received successfully.
      tags:
      - Platform API
  read.completed:
    post:
      description: Called when the fetch of data types for a product has completed.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReadCompletedWebhook'
            examples:
              Read completed with validation warnings:
                value:
                  id: 743ec94a-8aa4-44bb-8bd4-e1855ee0e74b
                  eventType: read.completed
                  generatedDate: '2022-10-23T00:00:00.000Z'
                  payload:
                    referenceCompany:
                      id: 0498e921-9b53-4396-a412-4f2f5983b0a2
                      name: Toft stores
                      description: Requested early access to the new financing scheme.
                      links:
                        portal: https://app.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/summary
                    modifiedFromDate: '2022-10-23T00:00:00.000Z'
                    dataTypes:
                    - connectionId: 2e9d2c44-f675-40ba-8049-353bfcb5e171
                      dataType: invoices
                      recordsModified: false
                      status: Complete
                      issues:
                      - type: warning.validation
                        message: Something doesn't look right about these invoices. You can see more information in the logs.
                        links:
                          logs: https://api.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/sync/743ec94a-8aa4-44bb-8bd4-e1855ee0e74b/validation
                          portal: https://app.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/pull-history
                          readMore: https://docs.codat.io/using-the-api/get-data-troubleshooting#warning.validation
              Read completed without issues:
                value:
                  id: 743ec94a-8aa4-44bb-8bd4-e1855ee0e74b
                  eventType: read.completed
                  generatedDate: '2022-10-23T00:00:00.000Z'
                  payload:
                    referenceCompany:
                      id: 0498e921-9b53-4396-a412-4f2f5983b0a2
                      name: Toft stores
                      description: Requested early access to the new financing scheme.
                      links:
                        portal: https://app.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/summary
                    modifiedFromDate: '2022-10-23T00:00:00.000Z'
                    dataTypes:
                    - connectionId: 2e9d2c44-f675-40ba-8049-353bfcb5e171
                      dataType: invoices
                      recordsModified: false
                      status: Complete
                      issues: []
      responses:
        '200':
          description: Return a 200 status to indicate that the webhook was received successfully.
      tags:
      - Platform API
  read.completed.initial:
    post:
      description: Called when the initial fetch of data types for a product has been completed.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReadCompletedWebhook'
            examples:
              Initial with validation warnings:
                value:
                  id: 743ec94a-8aa4-44bb-8bd4-e1855ee0e74b
                  eventType: read.completed.initial
                  generatedDate: '2022-10-23T00:00:00.000Z'
                  payload:
                    referenceCompany:
                      id: 0498e921-9b53-4396-a412-4f2f5983b0a2
                      name: Toft stores
                      description: Requested early access to the new financing scheme.
                      links:
                        portal: https://app.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/summary
                    modifiedFromDate: '2022-10-23T00:00:00.000Z'
                    dataTypes:
                    - connectionId: 2e9d2c44-f675-40ba-8049-353bfcb5e171
                      dataType: invoices
                      recordsModified: false
                      status: Complete
                      issues:
                      - type: warning.validation
                        message: Something doesn't look right about these invoices. You can see more information in the logs.
                        links:
                          logs: https://api.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/sync/743ec94a-8aa4-44bb-8bd4-e1855ee0e74b/validation
                          portal: https://app.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/pull-history
                          readMore: https://docs.codat.io/using-the-api/get-data-troubleshooting#warning.validation
              Initial without issues:
                value:
                  id: 743ec94a-8aa4-44bb-8bd4-e1855ee0e74b
                  eventType: read.completed.initial
                  generatedDate: '2022-10-23T00:00:00.000Z'
                  payload:
                    referenceCompany:
                      id: 0498e921-9b53-4396-a412-4f2f5983b0a2
                      name: Toft stores
                      description: Requested early access to the new financing scheme.
                      links:
                        portal: https://app.codat.io/companies/0498e921-9b53-4396-a412-4f2f5983b0a2/summary
                    modifiedFromDate: '2022-10-23T00:00:00.000Z'
                    dataTypes:
                    - connectionId: 2e9d2c44-f675-40ba-8049-353bfcb5e171
                      dataType: invoices
                      recordsModified: false
                      status: Complete
                      issues: []
      responses:
        '200':
          description: Return a 200 status to indicate that the webhook was received successfully.
      tags:
      - Platform API
  '{dataType}.write.successful':
    post:
      description: "Indicates that a `dataType` has been successfully created, updated, deleted, or had an attachment uploaded in the accounting software.\n\nCodat now refers to push operations as write requests.\n\nFor example, to subscribe to events where a bill is written into the accounting software, use the `bills.write.successful` webhook.\n\n### Supported data types and write types\n\n| `dataType`       | Create  | Update  | Delete  | UploadAttachment |\n|------------------|---------|---------|---------|------------------|\n| bankAccounts     | &#9989; | &#9989; | -       | -                |  \n| bankTransactions | &#9989; | -       | -       | -                |\n| billCreditNotes  | &#9989; | &#9989; | -       | &#9989;          |  \n| billPayments     | &#9989; | -       | &#9989; | -                | \n| bills            | &#9989; | &#9989; | &#9989; | &#9989;          | \n| chartOfAccounts  | &#9989; | -       | -       | -                | \n| creditNotes      | &#9989; | &#9989; | -       | -                | \n| customers        | &#9989; | &#9989; | -       | -                | \n| directCosts      | &#9989; | -       | &#9989; | &#9989;          | \n| directIncomes    | &#9989; | -       | -       | &#9989;          | \n| invoices         | &#9989; | &#9989; | &#9989; | &#9989;          | \n| items            | &#9989; | -       | -       | -                | \n| journalEntries   | &#9989; | -       | &#9989; | -                | \n| journals         | &#9989; | -       | -       | -                | \n| payments         | &#9989; | -       | -       | -                | \n| purchaseOrders   | &#9989; | &#9989; | -       | -                | \n| suppliers        | &#9989; | &#9989; | -       | -                | \n| transfers        | &#9989; | -       | -       | &#9989;          | \n"
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DataTypeWriteWebhook'
            examples:
              Record:
                value:
                  id: bae71d36-ff47-420a-b4a6-f8c9ddf41140
                  eventType: '{dataType}.write.successful'
                  generatedDate: '2023-05-03T10:00:23Z'
                  payload:
                    id: a9367074-b5c3-42c4-9be4-be129f43577e
                    type: Create
                    referenceCompany:
                      id: 70af3071-65d9-4ec3-b3cb-5283e8d55dac
                      name: Toft stores
                      description: cust_1MtJUT2eZvKYlo2CNaw2HvEv
                    connectionId: 12571faf-0898-47e7-afdd-0fe9eb0a9bf5
                    requestedOnDate: '2023-05-03T10:00:00Z'
                    completedOnDate: '2023-05-03T10:00:23Z'
                    status: Success
                    record:
                      id: bil_1Nispe2eZvKYlo2Cd31jOCgZ
              Attachment:
                value:
                  id: bae71d36-ff47-420a-b4a6-f8c9ddf41140
                  eventType: '{dataType}.write.successful'
                  generatedDate: '2023-05-03T10:00:23Z'
                  payload:
                    id: a9367074-b5c3-42c4-9be4-be129f43577e
                    type: UploadAttachment
                    referenceCompany:
                      id: 70af3071-65d9-4ec3-b3cb-5283e8d55dac
                      name: Toft stores
                      description: cust_1MtJUT2eZvKYlo2CNaw2HvEv
                    connectionId: 12571faf-0898-47e7-afdd-0fe9eb0a9bf5
                    requestedOnDate: '2023-05-03T10:00:00Z'
                    completedOnDate: '2023-05-03T10:00:23Z'
                    status: Success
                    record:
                      id: bil_1Nispe2eZvKYlo2Cd31jOCgZ
                    attachmentId: att_1AZtxr2eZvKYlo2CJDX8whov
      responses:
        '200':
          description: Return a 200 status to indicate that the webhook was received.
      tags:
      - Platform API
  '{dataType}.write.unsuccessful':
    post:
      description: "Indicates that a `dataType` has not been successfully created, updated, deleted, or had an attachment uploaded in the accounting software.\n\nCodat now refers to push operations as write requests.\n\nFor example, to subscribe to events where a bill is written into the accounting software, use the `bills.write.unsuccessful` webhook.\n\n### Supported data types and write types\n\n| `dataType`       | Create  | Update  | Delete  | UploadAttachment |\n|------------------|---------|---------|---------|------------------|\n| bankAccounts     | &#9989; | &#9989; | -       | -                |  \n| bankTransactions | &#9989; | -       | -       | -                |\n| billCreditNotes  | &#9989; | &#9989; | -       | &#9989;          |  \n| billPayments     | &#9989; | -       | &#9989; | -                | \n| bills            | &#9989; | &#9989; | &#9989; | &#9989;          | \n| chartOfAccounts  | &#9989; | -       | -       | -                | \n| creditNotes      | &#9989; | &#9989; | -       | -                | \n| customers        | &#9989; | &#9989; | -       | -                | \n| directCosts      | &#9989; | -       | &#9989; | &#9989;          | \n| directIncomes    | &#9989; | -       | -       | &#9989;          | \n| invoices         | &#9989; | &#9989; | &#9989; | &#9989;          | \n| items            | &#9989; | -       | -       | -                | \n| journalEntries   | &#9989; | -       | &#9989; | -                | \n| journals         | &#9989; | -       | -       | -                | \n| payments         | &#9989; | -       | -       | -                | \n| purchaseOrders   | &#9989; | &#9989; | -       | -                | \n| suppliers        | &#9989; | &#9989; | -       | -                | \n| transfers        | &#9989; | -       | -       | &#9989;          | \n"
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DataTypeWriteWebhook'
            examples:
              Record:
                value:
                  id: bae71d36-ff47-420a-b4a6-f8c9ddf41140
                  eventType: '{dataType}.write.unsuccessful'
                  generatedDate: '2023-05-03T10:00:23Z'
                  payload:
                    id: a9367074-b5c3-42c4-9be4-be129f43577e
                    type: Update
                    referenceCompany:
                      id: 70af3071-65d9-4ec3-b3cb-5283e8d55dac
                      name: Toft stores
                      description: cust_1MtJUT2eZvKYlo2CNaw2HvEv
                    connectionId: 12571faf-0898-47e7-afdd-0fe9eb0a9bf5
                    requestedOnDate: '2023-05-03T10:00:00Z'
                    completedOnDate: '2023-05-03T10:00:23Z'
                    status: Failed
              Record timed out:
                value:
                  id: bae71d36-ff47-420a-b4a6-f8c9ddf41140
                  eventType: '{dataType}.write.unsuccessful'
                  generatedDate: '2023-05-03T10:00:23Z'
                  payload:
                    id: a9367074-b5c3-42c4-9be4-be129f43577e
                    type: Delete
                    referenceCompany:
                      id: 70af3071-65d9-4ec3-b3cb-5283e8d55dac
                      name: Toft stores
                      description: cust_1MtJUT2eZvKYlo2CNaw2HvEv
                    connectionId: 12571faf-0898-47e7-afdd-0fe9eb0a9bf5
                    requestedOnDate: '2023-05-03T10:00:00Z'
                    completedOnDate: '2023-05-03T10:00:23Z'
                    status: TimedOut
              Attachment:
                value:
                  id: bae71d36-ff47-420a-b4a6-f8c9ddf41140
                  eventType: '{dataType}.write.unsuccessful'
                  generatedDate: '2023-05-03T10:00:23Z'
                  payload:
                    id: a9367074-b5c3-42c4-9be4-be129f43577e
                    type: UploadAttachment
                    referenceCompany:
                      id: 70af3071-65d9-4ec3-b3cb-5283e8d55dac
                      name: Toft stores
                      description: cust_1MtJUT2eZvKYlo2CNaw2HvEv
                    connectionId: 12571faf-0898-47e7-afdd-0fe9eb0a9bf5
                    requestedOnDate: '2023-05-03T10:00:00Z'
                    completedOnDate: '2023-05-03T10:00:23Z'
                    status: TimedOut
                    record:
                      id: bil_1Nispe2eZvKYlo2Cd31jOCgZ
      responses:
        '200':
          description: Return a 200 status to indicate that the webhook was received.
      tags:
      - Platform API
  client.rateLimit.reached:
    post:
      description: Called when your client’s request count to Codat's API surpasses the allocated quota.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClientRateLimitWebhook'
            examples:
              Reached:
                value:
                  id: 743ec94a-8aa4-44bb-8bd4-e1855ee0e74b
                  eventType: client.rateLimit.reached
                  generatedDate: '2024-09-01T00:00:00Z'
                  payload:
                    dailyQuota: 12000
                    quotaRemaining: 0
                    expiryDate: '2024-09-01T12:14:14Z'
      responses:
        '200':
          description: Return a 200 status to indicate that the webhook was received successfully.
      tags:
      - Platform API
  client.rateLimit.reset:
    post:
      description: Called when your client's rate limit quota is reset, allowing additional requests to Codat's API.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Clie

# --- truncated at 32 KB (70 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/codat/refs/heads/main/openapi/codat-platform-api-api-openapi.yml