Passer au contenu principal
POST
cURL

Autorisations

Authorization
string
header
requis

Comment les applications StockShift se connectent. L'application ouvre /apps/authorize dans le navigateur système avec un défi PKCE S256 et l'empreinte de sa clé d'appareil. Le membre s'y connecte, avec toutes les vérifications qu'applique le Web. Le navigateur renvoie un code à l'application, qui l'échange à POST /apps/token avec le vérificateur PKCE et une preuve DPoP (RFC 9449) signée par la clé d'appareil. La réponse contient un jeton d'accès d'une heure, envoyé comme jeton de type Bearer à chaque appel, et un jeton d'actualisation rotatif de 30 jours. Une actualisation exige une preuve DPoP avec le dernier nonce du serveur, si bien qu'un jeton d'actualisation volé est inutile sans la clé d'appareil. Une session prend fin 180 jours après la connexion au plus tard. Chaque requête d'application porte StockShift-Client: / (), par exemple ios/1.4.2 (311). Sous le minimum de GET /apps/version-policy, un appel reçoit la réponse 426 client_upgrade_required avec le minimum et le lien de la boutique. Sous la version deprecated-below, l'appel fonctionne et la réponse ajoute StockShift-Client-Deprecated: sunset=; minimum=. La connexion et la déconnexion, l'état de l'appareil, le reçu d'effacement, les appels de verrouillage par NIP et la politique de version répondent pour toutes les versions.

Corps

application/json

Une signature par NIP d'un appareil : l'action signée et l'assertion que la clé de l'appareil a signée, avec une preuve DPoP dans l'en-tête DPoP.

action
enum<string>
requis

L'Action à signer, par son nom public, tel que nommé dans POST /api/v1/access/signatures/start.

Options disponibles:
devices.wipe,
engineering.ecos.approve,
inventory.periods.reopen,
inventory.verifications.request,
inventory.verifications.witness,
sales.certificates.sign,
sales.shipments.post-certified
Exemple:

"devices.wipe"

assertion
string
requis

Le device-signature+jwt que la clé de l'appareil a signé une fois le NIP vérifié. Ses revendications sont sub, device, act, meaning, digest, pin, iat et jti.

Maximum string length: 8192
Exemple:

"eyJ0eXAiOiJkZXZpY2Utc2lnbmF0dXJlK2p3dCIsImFsZyI6IkVTMjU2In0.eyJzdWIiOiI3In0.c2lnbmF0dXJl"

Réponse

DeviceSignatureResource

data
DeviceSignatureResource · object
requis

Le jeton de signature que donne une signature par NIP sur un appareil.