Instalación
Inicio rápido
Crea un artículo y luego lista las existencias disponibles:Autenticación
Pasa una clave de API o un token de acceso OAuth comotoken. Crea una clave de API en la app, en Configuración > Acceso > Claves de API. La clave actúa como el miembro que la creó, y cada llamada necesita tanto el permiso del miembro como uno de los alcances de la clave.
Para un token OAuth que vence, pasa una función. El cliente la llama antes de cada solicitud:
Hacer llamadas
Hay un método por cada método HTTP:get, post, put, patch y delete. Cada uno recibe una ruta tal como la escribe la referencia de la API. Completa los parámetros de ruta con path, la cadena de consulta con query y el cuerpo JSON con body:
undefined, una exportación CSV con su texto y un archivo con la Response sin procesar.
Cada esquema de la referencia tiene un tipo en Schemas:
Paginación
Una lista que puede crecer devuelve una página a la vez.paginate() sigue los cursores y entrega cada registro:
next_cursor de cada página como query.after hasta que sea null.
Errores
Una llamada fallida lanza unApiError que contiene el cuerpo de detalles del problema de RFC 9457. Decide según code, que es estable. detail está escrito para personas y puede cambiar.
ApiError también tiene status, problem y headers. Una llamada que no recibe respuesta, porque falló la red o el intento agotó el tiempo de espera, lanza un ConnectionError.
Reintentos y claves de idempotencia
El cliente reintenta un429 después del tiempo que indica Retry-After. Lo hace con todos los métodos, porque la API no ejecutó la llamada. Si Retry-After es mayor que maxRetryAfter, lanza un error en lugar de esperar.
Un 5xx o una falla de red se reintenta para GET, PUT y DELETE, con una breve espera entre intentos. Un POST o PATCH solo se reintenta cuando le das una clave de idempotencia, para que un reintento no pueda hacer el cambio dos veces:
Webhooks
Revisa el encabezadoStockShift-Signature antes de confiar en una entrega. verifyWebhook() necesita el cuerpo sin procesar, exactamente como llegó:
tolerance, en segundos, para cambiarlo. Los reintentos de un evento conservan su id, así que guárdalo y omite los eventos que ya procesaste.
Para probar tu propio receptor, signWebhook() firma un payload igual que StockShift.
Versiones
La versión mayor cambia cuando la API cambia de una forma que puede romper tu código, como un campo eliminado o un parámetro obligatorio nuevo. Los endpoints y campos nuevos llegan en versiones menores.API_VERSION contiene la versión de la referencia de la API con la que se compiló el paquete.