{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"c25df722-32b0-471f-aa12-a01f0a8b998d","name":"Accutics Open API - Documentation","description":"# Basics\n\nThe section will give an introduction to the overall structure of the API. The API uses a REST-like structure, while not adhering strictly to the standard, it uses HTTP verbs, status codes and URL paths in a way that should be familiar to those familiar with REST.\n\nThe API is JSON based, and JSON is used in request bodies and responses. The responses format is described in greater details below.\n\n## Authentication\n\nAll requests made to the Accutics open API, must be authenticated using a JWT based bearer token set in the `Authorization` header. The token must belong to an API user profile. Contact support to create an API user and to get instructions on how to acquire the access token corresponding to that user.\n\nThe permissions granted when using the token are controlled by the project and accounts the API user is added to and the roles given to it. This is managed in the Accutics Platform.\n\n## Response format\n\nAll successful responses follow a common format, which will be described here. Successful requests will have a `2xx` HTTP status code. See details about the response contents and status codes for specific requests in the appropriate sections of the this documentation.\n\nAll responses are JSON formatted and consist of two top-level attributes as shown in the example below:\n\n``` json\n{\n  \"data\": [...],\n  \"meta\": {...}\n}\n\n ```\n\nThe `data` property contains the requested data. For responses containing multiple entities the contents of the property will be an array of objects, i.e. when listing entities in \"index\" requests. Note that an index request which only contains one entity will still result in an array with a single entry. For requests that inherently returns a single entity, such as a \"show\" or \"create\" requests, the `data` attribute will contain an object.\n\nThe `meta` attribute contains meta data about the response, such as paging information. The exact content depends on the given request, however it always contains the `endpoint` property, which contains the name of the endpoint used.\n\n## Error responses\n\nError responses follow a similar format to succesful responses. The `meta` property is also present here, while the `data` property is replaced by the `error` property.\n\nThe `error` property contains `code` (string) which can be used in conjunction with the HTTP status code, to determine the type of error. A list of general error codes is given below - error codes specific to individual requests are described in their respective sections.\n\nThe `message` property contains a human-readable description of the error that occurred.\n\n> Note that the message should not be used to programatically determine the nature of an error. The messages are subject to change between API versions or even within the same version - use the HTTP status code and `code` property instead. \n  \n\nThe `data` property contains a JSON object with data, which can be used to further investigate the cause of the error. The contents of the object varies between different requests and error codes.\n\n``` json\n{\n    \"error\": {\n        \"code\": \"...\",\n        \"message\": \"...\",\n        \"data\": {...}\n    },\n    \"meta\": {\n        \"endpoint\": \"...\"\n    }\n}\n\n ```\n\n### General errors\n\nThe table below documents general error responses that are not specific to certain requests.\n\n| Status code | **Error code** | **Description** |\n| --- | --- | --- |\n| 400 | `invalid_route` | Occurs if a request is made with a URL path that does not match any endpoint in the open API or an incorrect HTTP method is used. |\n| 401 | `authorization_header_missing` | Occurs if the `Authorization` header is not set in the request or it's empty. |\n| 403 | `authorization` | The API user doesn't have the required permission to access the requested resource. |\n\n## Request options\n\nThis section describes common options that can be used across various requests.\n\n### Paging\n\nFor requests that list entities, paging can be used to request data page by page. The following query string parameter are supported:\n\n| **Parameter** | **Description** | **Example** |\n| --- | --- | --- |\n| `page_size` | The maximum number of entities returned in the response. Various requests will have different max page sizes. If a page size greater than the maximum is requested, the page size is limited to the maximum page size. | 50 |\n| `page` | The page number to return in the response. To get the first page the parameter can be omitted or set to 1. | 2 |\n\nRequests supporting pagination will have the `pagination` property in the `meta` property of the response. It contains the following information.\n\n| **Property** | **Description** | **Example** |\n| --- | --- | --- |\n| `first` | The URL to the first page. |  |\n| `previous` | The URL to the previous page, if one exists. |  |\n| `current` | The URL to the current page. |  |\n| `next` | The URL to the next page of data, if more pages exist. |  |\n| `last` | The URL to the last page of entities. |  |\n| `items_per_page` | The number of entities per page. | 100 |\n| `total_items` | The total number of entities. | 245 |\n| `page_param` | The name of the parameter used to specify the requested page (static value). | \"page\" |\n| `size_param` | The name of the parameter used to specify the page size (static value). | \"page_size\" |\n\nThe property contains an object defined by the following JSON Schema.\n\n``` json\n{\n    \"type\": \"object\",\n    \"properties\": {\n        \"first\": {\"type\": \"string\"},\n        \"previous\": {\"type\": [\"string\", \"null\"]},\n        \"current\": {\"type\": \"string\"},\n        \"next\": {\"type\": [\"string\", \"null\"]},\n        \"last\": {\"type\": \"string\"},\n        \"items_per_page\": {\"type\": \"integer\"},\n        \"total_items\": {\"type\": \"integer\"},\n        \"page_param\": {\"type\": \"string\"},\n        \"size_param\": {\"type\": \"string\"}\n    }\n}\n\n ```","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"4709959","team":115917,"collectionId":"c25df722-32b0-471f-aa12-a01f0a8b998d","publishedId":"2sAYHwHPgh","public":true,"publicUrl":"https://docs.api.accutics.com","privateUrl":"https://go.postman.co/documentation/4709959-c25df722-32b0-471f-aa12-a01f0a8b998d","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"documentationLayout":"classic-double-column","customisation":{"metaTags":[{"name":"description","value":""},{"name":"title","value":""}],"appearance":{"default":"system_default","themes":[{"name":"dark","logo":null,"colors":{"top-bar":"212121","right-sidebar":"303030","highlight":"FF6C37"}},{"name":"light","logo":null,"colors":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"}}]}},"version":"8.10.1","publishDate":"2025-02-27T09:46:23.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{"title":"","description":""},"logos":{"logoLight":null,"logoDark":null}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/e16c70aabe9200e9f709e5a5859231b00ee143b570c44d1d32c2eaa51d6c4461","favicon":"https://accutics.com/favicon.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://docs.api.accutics.com/view/metadata/2sAYHwHPgh"}