{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"a3493a8f-86f8-4c45-a109-5cc3cacae51e","name":"Travellink Web API - Sales - Documentation","description":"API Sales\n\nCollections for devs\n\nDoubts and suggestions [api.travellink@wooba.com.br](https://mailto:api.travellink@wooba.com.br).\n\n# Authentication\n\n1. Authentication in the services is mandatory, and information about the developer token and developer access code and environment credential (login and password) must be sent;\n    \n2. In the request header, you need to send the developer token, which is the developer information, each developer in the Wooba environment has a specific developer token;\n    \n3. The developer shortcode is information that must be RSA encoded using PKCS1 and converted to base64;\n    \n\n# Developer Access Code\n\nExample for encrypting DeveloperAccessCode in base64. **(.NET)**\n\n``` csharp\nnamespace WindowsFormsApp2\n{\n    public partial class Form1 : Form\n    {\n        public Form1()\n        {\n            InitializeComponent();\n        }\n        private void Form1_Load(object sender, EventArgs e)\n        {\n            var resp = Test(\"TESTETESTE|08/01/2021\", \"<RSAKeyValue><Modulus>chaveinvalida_criptografada</Modulus><Exponent>AZLP</Exponent></RSAKeyValue>\");\n        }\n        static string Test(string Valor, string Chave)\n        {\n            using (RSACryptoServiceProvider RSA = new RSACryptoServiceProvider())\n            {\n                RSA.FromXmlString(Chave);\n                // Utilizar o modo  PKCS1\n                var encryptedData = RSA.Encrypt(System.Text.Encoding.UTF8.GetBytes(Valor), false);\n                return Convert.ToBase64String(encryptedData);\n            }\n        }\n    }\n}\n\n ```\n\n# Endpoint\n\nEndpoints for acess **SANDBOX**,\n\n\\* [https://wooba-sandbox.travellink.com.br/TravellinkWebApi//api/v1/sales/](https://wooba-sandbox.travellink.com.br/TravellinkWebApi//api/v1/sales/)**\\*service**\\*\n\n**The production information of each environment (Consolidator/Operator/Wooba Agency) must be questioned directly to the developer's contractor, we do not create and do not pass any type of credential information or endpoint managed by customers;**\n\nThe endpoint for consumption consists of URL/SERVICE\n\n| Environment | URL |\n| --- | --- |\n| SANDBOX | [https://wooba-sandbox.travellink.com.br/TravellinkWebApi//api/v1/sales/](https://wooba-sandbox.travellink.com.br/TravellinkWebApi//api/v1/sales/) |\n| Production | Inquire with the consolidator |\n\nMandatory to send information in the HEADER of the request for each service;\n\n| Method | Use case |\n| --- | --- |\n| Developer Token | Developer token |\n| Developer Acces Code | The information must  <br>encoded in RSA using PKCS1 with public key and converted to BASE64. |\n\n# Webhook - Integration in seconds\n\n### **What are webhooks?**\n\nWebhooks are events triggered when there is an important change in certain transactions. This allows you to create routinesand workflows based on passively receiving information.\n\nWhenever an update happens, the system sends a request to the webhook configured with the updated transaction data.In this way you can automatically go on with your workflow.\n\n**Settings:**\n\nTo configure the weebhook, you must ask your Consolidator/Operator or person responsible for the portal to add your TravelLinkApi_Sales credentials settings.\n\nAccess Panel > Travellink Api > Credentials > Notification Url\n\n<img src=\"https://content.pstmn.io/f5460810-d236-48fe-b32d-c812e20fddf2/Y3JlZGVuY2lhbC5qcGc=\">\n\nThis access will be sent for all the registred credentials according the transaction context.\n\nExample of object returned:\n\n##### Post\n\n``` json\n{\n  \"Api\": \"Travellink-ApiSales\",\n  \"TransactionType\": 2,\n  \"TransactionTypeDescription\": \"Hotel\",\n  \"Id\": 12050,\n  \"UniqueId\": \"HTL-CE569F58-962A-4B3C-9320-A269AE8AF5B2\",\n  \"Locator\": \"PV_HTL-67AC9A90D5\",\n  \"Ticket\": \"\",\n  \"LastUpdate\": \"11/11/2022 14:57:17\"\n}\n\n ```\n\n# Services\n\n1. Details - Product information details (Payments, tax ...);\n    \n2. List - List the all sales by search criteria;\n    \n3. Change - Search change in sales;","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"23357974","collectionId":"a3493a8f-86f8-4c45-a109-5cc3cacae51e","publishedId":"2s7YYvbhkP","public":true,"publicUrl":"https://documenter-api.postman.tech/view/23357974/2s7YYvbhkP","privateUrl":"https://go.postman.co/documentation/23357974-a3493a8f-86f8-4c45-a109-5cc3cacae51e","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"documentationLayout":"classic-double-column","customisation":null,"version":"8.10.1","publishDate":"2022-12-02T13:50:42.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"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/8d9000d6c99a7aaf04a875abdddbb6c71ec9556bf3d22828d11b4c69a660dd72","favicon":""},"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://documenter.gw.postman.com/view/metadata/2s7YYvbhkP"}