{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"f59c3410-b180-46ea-8714-23dfc77b0376","name":"SoftTouch API docs","description":"## Who is SoftTouch?\n\nIn 1999, the time had come: SoftTouch was born. At that time it was unthinkable that the then one-man business would grow into what SoftTouch is today. \"Because I was responsible for the development, sales and installation of the POS system, I got to know the market through and through.\" This was the basis for the exceptional service we offer today.\n\nIt was in the year 2009 that the company experienced explosive growth: a new office with ample demonstration space was built, and new employees were hired. Today, SoftTouch has grown into a business with in-depth know-how of both POS systems and the fashion world.\n\n## What does this API?\n\nThis API is build using RESTful methods returning JSON and can be used to fetch and put data from and into the clients database.\n\n## How to retrieve an account id and token?\n\nThe client has to request an offer for using this API. As soon as they confirm this offer, a test environment can be provided. Once development is completed, we need customer aproval before live credentials can be provided. (There will also be a double check from SoftTouch as well, to check if everything is realistically in order when looking at the API calls.)\n\nAny questions regarding the use of this API can be sent to [dev@softtouch.be](https://)\n\nThe SoftTouch API does not work with web hooks. What follows are three simple steps to keep the web shop up to date with the current stock.\n\n### Full sync overnight\n\nIt is a good idea to synchronise all online products over night. The same can be done for the other product related models. Following models can be useful: stores, seasons, brands, categories, colors, sizetables and discounts. Make sure to set discount_date if the sync starts on the evening before. Like so the correct discounts can be displayed on the website.  \nA full sync should only be used overnight and perhaps on demand when something could be changed in the stock. The latter should not be used in a loop during the day or when the visitor clicks on an article. The following methods cover how to handle this in a better way.  \nAs with every model the API will only fetch the first 100 products by default. This can be altered with the \"take\" parameter, which can receive an integer value with a maximum of 500. The \"skip\" parameter, which also takes an integer value, will ignore those first products and retrieve the following take-amount of products. For example “take”: 500 and “skip”: 1500 will retrieve 500 products starting from the 1501st.  \nAn important note about nightly syncs: on our server side, a backup of the data is made during a certain point at night. As you can imagine this can lock the data and might result in calls with a connection error. It needs no saying that each call should always be validated on an expected result. It is even more true in this case.\n\n### Ten minute sync\n\nLet us repeat an important statement. During the day it is overkill to do a full sync of the products and is strongly frowned upon. A better way to keep the stock up to date is to get the products every ten minutes with the parameter \"since\". Another parameter which is very useful here is the parameter “detail” with the value “stock”. For most web shops it should be sufficient to run this every ten minutes.\n\n### On click sync\n\nSince it is very important, I will repeat myself once again. Never do a full sync during the day. Not even when a visitor visits a page. It is important however that the visitor sees the correct available stock. So when the visitor clicks through to a specific article it Is a good idea to get the product with the parameter “detail” and the value “stock”. Since the stock can still change before the visitor checks out, another check is advisable. It is not fun to disappoint a customer at this point, but better do it at this point than at the point where the articles are already paid.","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"5301532","collectionId":"f59c3410-b180-46ea-8714-23dfc77b0376","publishedId":"2s935iumQW","public":true,"publicUrl":"https://development.softtouch.eu","privateUrl":"https://go.postman.co/documentation/5301532-f59c3410-b180-46ea-8714-23dfc77b0376","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"28A9E0"},"documentationLayout":"classic-double-column","customisation":null,"version":"8.11.4","publishDate":"2023-03-31T07:45:09.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/768118b36f06c94b0306958b980558e6915839447e859fe16906e29d683976f0","favicon":"https://softtouch.eu/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://development.softtouch.eu/view/metadata/2s935iumQW"}