{ "aid": "clearbooks.co.uk:clear-books-api-1.0.0", "name": "Clear Books API", "type": "Index", "description": "REST API for interfacing with Clear Books products\n\n# Authentication\n\nThis API uses OAuth 2 for authentication and authorisation. A compatible OAuth 2 client library or sufficient knowledge to implement an OAuth 2 client is required.\n\nOnly confidential clients are supported and must use the \"Authorization code\" grant type. PKCE is supported (and recommended) but not mandatory. \n\n\n\n## Registration\n\nTo obtain API credentials for your application, please contact us: https://www.clearbooks.co.uk/support/api/\n\n## Refresh tokens\n\nSingle use refresh tokens are issued alongside access tokens and don't expire until they're used. You should use a refresh token once the associated access token has expired (or shortly before) to obtain a new pair of tokens. Excessive attempts to refresh access tokens before they expire will be rate limited.\n\n## Connection limits\n\nApplications can only hold a single access token for a user at any given time. If a user completes the OAuth authorisation flow a second time for an application they have already authorised, then their previous access token and refresh token will be revoked and the newly issued ones will need to be used going forward.\n\n# Rate Limits\n\nApplications making more than 5 requests per second for a sustained period may be subject to throttling and rate limiting.\n\nWhen an application is being rate limited a HTTP 429 response will be returned for API calls. Rate limited requests should be retried using an exponential backoff algorithm.\n\nRate limits are subject to change without prior warning and should not be hard-coded into applications.\n\n# Pagination\n\nEndpoints that support pagination will accept a `limit` parameter to define how many results to return per page (up to a maximum of 200), and a `page` parameter to select which page of results to return.\n\nTo help you understand the full result set without having to request all pages, all paginated responses will contain the following headers:\n\n* `X-Pagination-Limit` - The number of items per page of results\n* `X-Pagination-Current-Page` - The current page number\n* `X-Pagination-Total-Pages` - The total number of pages available\n* `X-Pagination-Total-Count` - The total number of results across all pages\n\n# Breaking changes\n\nWe aim not to make any breaking changes to this API without prior warning and/or increasing the version number wherever possible.\n\nWe will however make non-breaking changes without prior notice, and your integration must be able to handle these gracefully.\n\nExamples of changes we consider to be non-breaking include:\n\n* Addition of new endpoints\n* Addition of new request methods on existing endpoints\n* Addition of new response fields\n* Addition of new response headers\n* Addition of new optional query parameters\n* Addition of new optional request headers\n* Addition of new optional request body fields\n* Changes to the order of response body fields\n* Changes to the order of response headers\n* Changes to error messages\n* Changes to pagination defaults\n* Changes to rate limits\n* Changes to access token lifetimes\n* Changes to the IP addresses the API is served from\n* Changes to TLS certificates, including issuer where the issuing CA is widely trusted\n", "url": "https://raw.githubusercontent.com/jentic/jentic-public-apis/refs/heads/main/apis/openapi/clearbooks.co.uk/clear-books-api/1.0.0/apis.json", "tags": [ "clearbooks.co.uk", "clear-books-api" ], "created": "2026-04-07", "modified": "2026-04-07", "specificationVersion": "0.19", "access": "3rd-Party", "maintainers": [ { "FN": "Jentic", "X-github": "jentic", "url": "https://github.com/jentic" } ], "apis": [ { "aid": "clearbooks.co.uk:clear-books-api-1.0.0", "name": "Clear Books API", "description": "REST API for interfacing with Clear Books products\n\n# Authentication\n\nThis API uses OAuth 2 for authentication and authorisation. A compatible OAuth 2 client library or sufficient knowledge to implement an OAuth 2 client is required.\n\nOnly confidential clients are supported and must use the \"Authorization code\" grant type. PKCE is supported (and recommended) but not mandatory. \n\n\n\n## Registration\n\nTo obtain API credentials for your application, please contact us: https://www.clearbooks.co.uk/support/api/\n\n## Refresh tokens\n\nSingle use refresh tokens are issued alongside access tokens and don't expire until they're used. You should use a refresh token once the associated access token has expired (or shortly before) to obtain a new pair of tokens. Excessive attempts to refresh access tokens before they expire will be rate limited.\n\n## Connection limits\n\nApplications can only hold a single access token for a user at any given time. If a user completes the OAuth authorisation flow a second time for an application they have already authorised, then their previous access token and refresh token will be revoked and the newly issued ones will need to be used going forward.\n\n# Rate Limits\n\nApplications making more than 5 requests per second for a sustained period may be subject to throttling and rate limiting.\n\nWhen an application is being rate limited a HTTP 429 response will be returned for API calls. Rate limited requests should be retried using an exponential backoff algorithm.\n\nRate limits are subject to change without prior warning and should not be hard-coded into applications.\n\n# Pagination\n\nEndpoints that support pagination will accept a `limit` parameter to define how many results to return per page (up to a maximum of 200), and a `page` parameter to select which page of results to return.\n\nTo help you understand the full result set without having to request all pages, all paginated responses will contain the following headers:\n\n* `X-Pagination-Limit` - The number of items per page of results\n* `X-Pagination-Current-Page` - The current page number\n* `X-Pagination-Total-Pages` - The total number of pages available\n* `X-Pagination-Total-Count` - The total number of results across all pages\n\n# Breaking changes\n\nWe aim not to make any breaking changes to this API without prior warning and/or increasing the version number wherever possible.\n\nWe will however make non-breaking changes without prior notice, and your integration must be able to handle these gracefully.\n\nExamples of changes we consider to be non-breaking include:\n\n* Addition of new endpoints\n* Addition of new request methods on existing endpoints\n* Addition of new response fields\n* Addition of new response headers\n* Addition of new optional query parameters\n* Addition of new optional request headers\n* Addition of new optional request body fields\n* Changes to the order of response body fields\n* Changes to the order of response headers\n* Changes to error messages\n* Changes to pagination defaults\n* Changes to rate limits\n* Changes to access token lifetimes\n* Changes to the IP addresses the API is served from\n* Changes to TLS certificates, including issuer where the issuing CA is widely trusted\n", "image": "https://secure.clearbookscdn.uk/themes/minimaal-clearbooks/image/brand/logo-white.svg", "baseURL": "https://api.clearbooks.co.uk/v1", "humanURL": "https://github.com/jentic/jentic-public-apis/tree/main/apis/openapi/clearbooks.co.uk/clear-books-api/1.0.0", "version": "1.0.0", "tags": [ "clearbooks.co.uk", "clear-books-api" ], "properties": [ { "type": "OpenAPI", "name": "OpenAPI definition", "url": "https://raw.githubusercontent.com/jentic/jentic-public-apis/refs/heads/main/apis/openapi/clearbooks.co.uk/clear-books-api/1.0.0/openapi.json", "mediaType": "application/openapi+json" }, { "type": "GitHubRepo", "url": "https://github.com/jentic/jentic-public-apis/tree/main/apis/openapi/clearbooks.co.uk/clear-books-api/1.0.0" } ] } ] }