{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"fc67ec08-5e58-421f-9345-201bdd6bf3f6","name":"Nidux API","description":"# Bienvenidos al API de tienda Nidux\n\n## ¿Qué puedo hacer con mi tienda mediante el API?\n\n---\n\nPuedes realizar la gran mayoría de las operaciones que realizas en línea mediante el administrador, controlar tus productos, categorías, marcas, etc. Puedes revisar las órdenes, tipos de cambio y cupones activos. Puedes integrar estos métodos con tu sistemas internos y crear una automatización de procesos única.\n\n## ¿Cómo integro mis aplicaciones con el API de tienda Nidux?\n\n---\n\n1. Obtén la funcionalidad de API en tu tienda.\n    \n2. Puedes desarrollar una integración usando el lenguaje de programación que gustes. Puedes apoyarte en los diversos ejemplos que provee este sitio.\n    \n3. Todos los métodos (exceptuando el inicio de sesión) requieren de un Bearer Token, debes generar uno nuevo cada 7200 segundos.\n    \n\n## ¿Cómo habilito el API en mi cuenta Nidux?\n\n---\n\n1. Contacta tu operador Nidux para habilitar la funcionalidad.\n    \n2. Te proveeremos la información necesaria para iniciar sesión en el API.\n    \n3. Recuerda, tu contraseña de Administrador no se usa para el API, sólo funcionará la que definas exclusivamente para este servicio.\n    \n\n## ¿Cual es mi límite de peticiones?\n\n---\n\nLa cantidad de peticiones que puedes realizar por minuto al API Nidux puede variar en dependencia del Plan Nidux que poseas.  \nEste limite aplica para cada usuario individual asociado a tu tienda virtual cuando realiza peticiones a cualquier endpoint.\n\n| **Tipo de Plan** | **Cantidad de peticiones por minuto** |\n| --- | --- |\n| Emprendedor | 5 |\n| Plus | 10 |\n| Pro | 100 |\n| Corporativo | 300 |\n\n##### Nota: Si no sabes identificar el tipo de plan Nidux que posees, [en nuestra base del conocimiento](https://ayuda.nidux.com/c%C3%B3mo-identificar-mi-tipo-de-plan-y-el-id-de-mi-tienda) tenemos un artículo que te enseña a ubicar esta información.\n\nSobrepasar el límite de peticiones conlleva a realizar un tiempo de espera de hasta 5 minutos, recibirá una respuesta con código 429 y el siguiente contenido:\n\n``` json\n{\n    \"error\": \"Demasiados intentos, por favor espere para reintentar.\"\n}\n\n ```\n\n## Endpoint de producción\n\n---\n\nEn este momento, [<b>https://api.nidux.dev</b>](https://api.nidux.dev) es el endpoint en producción y el que recibirá las próximas actualizaciones y mejoras de Nidux.\n\n## ¿Qué es el token en sí?\n\n---\n\nEs un JWT, parte del estandar abierto [RFC7519](https://tools.ietf.org/html/rfc7519), es ligero y sencillo de manejar para los desarrolladores. Se requiere un token, válido y activo para realizar cualquier operación con el API. En términos de autenticación, el Token es muy valioso y se debe tener mucho cuidado en no perderlo.\n\n## Sobre el manejo de SKU\n\n---\n\nCuando una ruta requiera al SKU de un producto para realizar su función y tenga caracteres reservados en HTTP tal como lo es el slash (/), por ejemplo **P18048764/713709**, deberás aplicar un urlencode en ese string antes de colocarlo en la ruta donde se requiere por ejemplo:\n\n`/v1/products/P18048764/713709/stock`\n\nNótese que ya el símbolo del slash (/) ya no interfiere con el funcionamiento de la ruta.\n\n## Versiones de métodos\n\n---\n\nPor parte de Nidux, estaremos brindando nuevos métodos que faciliten aún más la integración con sus sistema. Cada versión tendrá una marca o etiqueta que se explicará de la siguiente forma:\n\n|  | Explicación | SOPORTE |\n| --- | --- | --- |\n| Actual | Es la versión a usar | Si |\n| Anterior - Legacy | Es una versión con soporte legacy | Si |\n| Obsoleto | Ya es una versión que no se debería usar, recomendamos migrar a una actual | Limitada |\n| BETA | Se publicarán métodos en fase de pruebas, mientras los consolidamos pueden sufrir modificaciones sin previo aviso | Ninguna |\n\n## Seguridad mejorada del API\n\n---\n\nHemos implementado un set de reglas que protegen el acceso y mejoran el uso justo del API, por lo que hay una serie de condiciones que se deben respetar para el correcto uso.\n\n1. Usar IPs de salida limpias para solicitudes API, de aparecer en una lista negra serán rechazadas al instante. [Verifica si tu IP está blacklisted](https://whatismyipaddress.com/blacklist-check)\n    \n2. Cada solicitud API debe ir con una estructura formal, **incluyendo una cabecera de User-Agent**, de lo contrario será rechazada.\n    \n3. Evitar enviar contenido externo adicional o bien, invocaciones que rompan con reglas OWASP, será rechazada cualquier solicitud que se considere como potencialmente dañina.\n    \n\n### Próximas mejoras\n\n---\n\n1. Generar proformas y links de pago\n    \n2. Sincronizar clientes entre sistemas\n    \n\n> Si deseas adquirir el servicio de API en tu tienda, contáctanos al correo [ventas@nidux.com](https://mailto:ventas@nidux.com) o [Visita Nidux.com](https://www.nidux.com)","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":true,"owner":"598310","team":288671,"collectionId":"fc67ec08-5e58-421f-9345-201bdd6bf3f6","publishedId":"S11KPyQG","public":true,"publicUrl":"https://apidoc.nidux.dev","privateUrl":"https://go.postman.co/documentation/598310-fc67ec08-5e58-421f-9345-201bdd6bf3f6","customColor":{"top-bar":"FFFFFF","right-sidebar":"2F2F2F","highlight":"FFB100"},"documentationLayout":"classic-single-column","customisation":null,"version":"8.10.1","publishDate":"2021-07-30T20:29:10.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[{"name":"Example","id":"9cc44cb8-b503-4406-bcfc-b88e737a692f","owner":"598310","values":[{"key":"usuario","value":"someusername","enabled":true},{"key":"password","value":"somepassword","enabled":true},{"key":"currentBearerToken","value":"EXAMPLE_BEARER_TOKEN_FOR_DOCUMENTATION","enabled":true},{"key":"apiStoreId","value":"99999","enabled":true},{"key":"apiEndpoint","value":"api.nidux.dev","enabled":true}],"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/5d741ea88b89bf9127d8af728d9b3222ff36023c251cfe46ae6bfea58a069bba","favicon":"https://res.cloudinary.com/postman/image/upload/v1594401362/team/euunllkawfv25rfapq4i.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":"Example","value":"598310-9cc44cb8-b503-4406-bcfc-b88e737a692f"}],"canonicalUrl":"https://apidoc.nidux.dev/view/metadata/S11KPyQG"}