{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"4cf89fdd-b51e-458a-8ac9-dd62c6781f40","name":"Tookane Public API","description":"Support: [soporte@tookane.com](https://mailto:soporte@tookane.com) | License: [MIT](https://opensource.org/licenses/MIT) | [Terms of Service](https://tookane.com/condiciones-de-uso/)\n\nThe Tookane API is organized around REST. Our API has predictable resource-oriented URLs, accepts form-encoded or json request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.\n\n---\n\n# Cross-Origin Resource Sharing\n\nThis API features Cross-Origin Resource Sharing (CORS) implemented in compliance with W3C spec. And that allows cross-domain communication from the browser. All responses have a wildcard same-origin which makes them completely public and accessible to everyone, including any code on any site.\n\n---\n\n# Authentication\n\n### JWT\n\nOur main authentication system its based on JWT authentication. You should generate a valid JWT before you can make any request to the API. For generate a valid JWT you should make a petition to the ‘auth/login’ endpoint and pass a valid username/password/account.  \nThe API will return a valid JWT Token with which you can build a header as follows:\n\n\\* **'Authorization: Generated JWT Token'** _Example: Authorization eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjV…._\n\nIn order to obtain a valid JWT Token and be able to make requests to the API, first of all, you must obtain certain information in order to make the request to obtain the token:\n\n\\* Account. You must have a valid Tookane account UUID.  \n\\* Username: You must have a valid username for the previous account.  \n\\* Password: You must know that user's password.\n\nWith these three data you can use the POST [auth/login](#tag/Auth) endpoint to obtain the JWT Token\n\nThe JWT its valid for 24 hours.\n\n### Apikey\n\nFor special cases, we have prepared an alternative authentication method based on APIkeys. This should only be used on those system that can not handle token refreshment every 24 hours.\n\nThe APIkey is a 64 characters long string, specially assigned to an account, and does not belong to any user in particular.\n\nThe APIkey has to be sent on every request on the headers with the key “Authorization“ and the value of the key. For example: “Authorization: gy@_gCP9DWpdM+7y$\\*ZTLHTwTh_2=F9y@kZNuWd%L5QXpLCJftrjX!x^W%Akv^Q=”\n\nTo authenticate a request based on APIkey, you have to use the path variation “/apikey/” before the path you are trying to hit.\n\nFor example, to target a job creation, instead of hitting the endpoint {{basePATH}}/api/v2/jobs, you will target {{basePATH}}/api/v2/apikey/jobs.\n\nNot all endpoints accept this alternative authentication.\n\n---\n\n# Enviroments\n\nThe API is available in two different environments, one for development and testing called **UAT** and the other for **production**.\n\nFor the integration of new clients and features it is mandatory to do the tests in **UAT**.  \nOnce the tests are finished and the operation has been verified, it will be transferred to the production environment.\n\nTo access the environments, the base urls will be the following.\n\n\\* **UAT**: [https://uatk.tookane.com](https://uatk.tookane.com)  \n\\* **Production**: [https://api.pelikane.com](https://api.pelikane.com)\n\n---\n\n# Server Response\n\n| Status Code | Description |\n| --- | --- |\n| 200 | **OK** - Standard response for successful HTTP requests. |\n| 400 | **Bad Request** - The server cannot or will not process the request due missing parameter. |\n| 401 | **Unauthorized** - Authentication failed. |\n| 404 | **Not Found** - Resource was not found. |\n| 500 | **Internal Server Error** - The API encountered an error. |\n\n---\n\n# Time Zones\n\nTookane is a service that supports multiple time zones. All timestamps that are stored in the database are always stored in UTC0.\n\nWhen it execute an operation of insert or update, if the timestamp is not in UTC0 and it has to be represented with a timezone shift, we allow sending the time zone in IANA format as a parameter in the requests.\n\nOnly in requests that support sending a time zone, the timestamp we receive will be interpreted as if it were the date and time in the specified time zone, and it will be transformed to UTC0 when storing it.\n\nWhen performing a read, all returned timestamps will be in UTC0. Only in those cases where it is relevant to inform the timezone shift, we will also return a field in the response with the time zone in IANA format and the offset in minutes.\n\n---\n\n# Quotas and access monitoring\n\nOur API has a restriction of maximum 30 request per minute per logged user and 60 request per minute for requests made on the same Account. We believe that this is more than enough for normal API usage, and we encourage you to reach us if for your case, you need and exemption.\n\n---\n\n# Job States\n\nA job has different status throughout the delivery process.Those state are in this table:\n\n| Id | Name |\n| --- | --- |\n| 5c52d24000eb9b65e1eecde1 | Open |\n| 5c5951a7fa017e2b2b1f806f | Approved |\n| 5c59baceebbf27290858b539 | Assigned |\n| 5c59bbc4ebbf27290858b53e | In progress |\n| 5c59bbf6ebbf27290858b53f | Planned |\n| 5c59bc86ebbf27290858b540 | In transit |\n| 5c59bcaaebbf27290858b541 | Next |\n| 5c59bcfdebbf27290858b542 | Completed |\n| 5c59bd76ebbf27290858b543 | Incidence |\n| 5c59bdaaebbf27290858b544 | Cancel |\n\n_Yo may take into account that the status behaviour, as well as the actions triggered, would change based on each account setup. Please, in case you have any question, contact Tookane team.\\\\_\n\n---\n\n# Service States\n\n| Id | Name |\n| --- | --- |\n| 5c6bd9d376dd6bef84d42758 | Pending |\n| 5c6bda0176dd6bef84d42759 | Completed |\n| 5c6bda3276dd6bef84d4275a | Incidence |\n| 5c6bda5176dd6bef84d4275b | Cancelled |\n| 5ee20915ed364d341bc53450 | Returned |\n\n---\n\n# Incoterms\n\n| Value | Description |\n| --- | --- |\n| EXW | EX Works |\n| FCA | Free CArrier |\n| FAS | Free Alongside Ship |\n| FOB | Free On Board |\n| CFR | Cost and Freight |\n| CIF | Cost, Insurance and Freight |\n| CPT | Carriage Paid To |\n| CIP | Carriage and Insurance Paid to |\n| DPU | Delivery at Place Unloaded |\n| DAP | Delivery At Place |\n| DDP | Delivery Duty Paid |\n\n---\n\n# Dangerous goods (ADR)\n\nIf you wish to transport dangerous goods, the available ADR types to provide on Labels array are:\n\n| Id | Image |\n| --- | --- |\n| 1.1 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/1.1.png\" alt=\"\"> |\n| 1.2 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/1.2.png\" alt=\"\"> |\n| 1.3 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/1.3.png\" alt=\"\"> |\n| 1.4 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/1.4.png\" alt=\"\"> |\n| 1.5 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/1.5.png\" alt=\"\"> |\n| 1.6 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/1.6.png\" alt=\"\"> |\n| 2.1 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/2.1.png\" alt=\"\"> |\n| 2.1_w | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/2.1_w.png\" alt=\"\"> |\n| 2.2 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/2.2.png\" alt=\"\"> |\n| 2.2_w | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/2.2_w.png\" alt=\"\"> |\n| 2.3 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/2.3.png\" alt=\"\"> |\n| 3 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/3.png\" alt=\"\"> |\n| 3_w | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/3_w.png\" alt=\"\"> |\n| 4.1 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/4.1.png\" alt=\"\"> |\n| 4.2 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/4.2.png\" alt=\"\"> |\n| 4.3 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/4.3.png\" alt=\"\"> |\n| 4.3_w | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/4.3_w.png\" alt=\"\"> |\n| 5.1 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/5.1.png\" alt=\"\"> |\n| 5.2 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/5.2.png\" alt=\"\"> |\n| 6.1 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/6.1.png\" alt=\"\"> |\n| 6.2 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/6.2.png\" alt=\"\"> |\n| 7 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/7.png\" alt=\"\"> |\n| 7.1 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/7.1.png\" alt=\"\"> |\n| 7.2 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/7.2.png\" alt=\"\"> |\n| 7.3 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/7.3.png\" alt=\"\"> |\n| 8 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/8.png\" alt=\"\"> |\n| 9 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/9.png\" alt=\"\"> |\n| 9.1 | <img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/9.1.png\" alt=\"\"> |\n\nAdditionally, if you require the logo for Environment Danger, you can provide the value 'environmentDanger' and we will print:\n\n<img src=\"https://s3.eu-west-1.amazonaws.com/data-uat-backoffice-v2.pelikane.com/pelikane/adr/environmentDanger.png\">\n\n---\n\n# Packaging Types\n\nThe allowed packaging types for transporting dangerous goods are:\n\n| Value | Description |\n| --- | --- |\n| JE | Jerrican |\n| CA | Box |\n| BI | Drum |\n| BO | Bottle |\n| EM | Light metal boxes |\n| S | Bag |\n\n---\n\n# Charges\n\nCharges is used to specify various types of financial obligations associated with a job.\n\n### Charges types\n\n| Value | Description |\n| --- | --- |\n| dutiesPayment | Covers the costs associated with customs duties and import taxes |\n| shippingCharge | Pertains to the cost incurred for shipping the goods from the sender to the receiver |\n| freightCharge | Similar to shippingCharge, but typically involves larger quantities or bulk items |\n| landedCost | The total cost of a product once it has arrived at a buyer's doorstep, including shipping fees, duties, and other charges |\n| chargeOnDelivery | Charges that are to be collected from the receiver upon delivery of the items |\n\n### Payer\n\nPayers refers to the entities responsible for covering the charges associated with the expedition. By specifying a payer, you establish which party is obligated to handle the particular costs, thereby adding a layer of financial governance to the process. The different types are:\n\n| Value | Description |\n| --- | --- |\n| sender | The entity responsible for originating the expedition will cover the charges |\n| receiver | The entity receiving the items will be liable for the charges |\n| thirdParty | A separate entity, neither the sender nor receiver, will take responsibility for covering the charges |\n\n---","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"20601396","collectionId":"4cf89fdd-b51e-458a-8ac9-dd62c6781f40","publishedId":"2s83zpK1DW","public":true,"publicUrl":"https://apidocs.tookane.com","privateUrl":"https://go.postman.co/documentation/20601396-4cf89fdd-b51e-458a-8ac9-dd62c6781f40","customColor":{"top-bar":"FFFFFF","right-sidebar":"00224C","highlight":"feb81a"},"documentationLayout":"classic-double-column","customisation":null,"version":"8.10.1","publishDate":"2022-11-14T06:03:16.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[{"name":"UAT","id":"48f1c409-ab90-43be-a5a3-421146ea76ff","owner":"20601396","values":[{"key":"baseUrl","value":"https://uatk.tookane.com/api/v2","enabled":true,"type":"default"}],"published":true}],"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/0e8601930a6aa035bdae46c202c96246c4075c042a9c609873e6f93bd0b6fb4b","favicon":"https://tookane.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"},{"label":"UAT","value":"20601396-48f1c409-ab90-43be-a5a3-421146ea76ff"}],"canonicalUrl":"https://apidocs.tookane.com/view/metadata/2s83zpK1DW"}