Aller au contenu

Ressources

Propositions

Chaque point de terminaison Propositions, avec la portée qu'il impose, le corps qu'il accepte, une réponse lisible et les refus qu'il peut renvoyer.

Proposer des modifications à un passeport publié.

post/organizations/{organization}/passports/{id}/proposals
Portée
passports:write
Idempotency-Key
Accepté
Renvoie
201

Paramètres de chemin

organizationchaîneObligatoire

L'organisation pour laquelle cette requête agit. La clé doit disposer d'une autorisation sur celle-ci.

idchaîneObligatoire

L'identifiant de la ressource. Traitez-le comme une chaîne opaque.

Corps de la requête

fieldsobjetObligatoire

Les champs à modifier, sous la forme que prend une mise à jour du passeport. Envoyez un nombre accompagné de son unité. Un null supprime une valeur.

Erreurs

Tous les refus que ce point de terminaison peut renvoyer, avec le statut qui les accompagne.

Requête
curl "https://passportcraft.com/api/v1/organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/passports/2c1f9e07-3b4d-4a18-9f6c-5e0a7b8d3c41/proposals" \
  -X POST \
  -H "Authorization: Bearer $PASSPORTCRAFT_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
  "fields": {
    "recycled_content_percentage": 42
  }
}'
Réponse · 201
{
  "object": "passport_proposal",
  "id": "9e2c4a71-3f68-4d05-8a9b-7c1e5f0d2b63",
  "name": "organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/proposals/9e2c4a71-3f68-4d05-8a9b-7c1e5f0d2b63",
  "passport_id": "2c1f9e07-3b4d-4a18-9f6c-5e0a7b8d3c41",
  "state": "pending",
  "moved": [],
  "fields": {
    "recycled_content_percentage": 42
  },
  "review_url": "https://passportcraft.com/passports/2c1f9e07-3b4d-4a18-9f6c-5e0a7b8d3c41/edit?proposal=9e2c4a71-3f68-4d05-8a9b-7c1e5f0d2b63",
  "requested_at": "2026-09-26T10:00:00.000Z",
  "expires_at": "2026-10-03T10:00:00.000Z",
  "decided_at": null,
  "livemode": true
}

POST /organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/passports/2c1f9e07-3b4d-4a18-9f6c-5e0a7b8d3c41/proposals

Lire une proposition.

get/organizations/{organization}/proposals/{id}
Portée
passports:read
Idempotency-Key
Non accepté
Renvoie
200

Paramètres de chemin

organizationchaîneObligatoire

L'organisation pour laquelle cette requête agit. La clé doit disposer d'une autorisation sur celle-ci.

idchaîneObligatoire

L'identifiant de la ressource. Traitez-le comme une chaîne opaque.

Erreurs

Tous les refus que ce point de terminaison peut renvoyer, avec le statut qui les accompagne.

Requête
curl "https://passportcraft.com/api/v1/organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/proposals/9e2c4a71-3f68-4d05-8a9b-7c1e5f0d2b63" \
  -H "Authorization: Bearer $PASSPORTCRAFT_API_KEY"
Réponse · 200
{
  "object": "passport_proposal",
  "id": "9e2c4a71-3f68-4d05-8a9b-7c1e5f0d2b63",
  "name": "organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/proposals/9e2c4a71-3f68-4d05-8a9b-7c1e5f0d2b63",
  "passport_id": "2c1f9e07-3b4d-4a18-9f6c-5e0a7b8d3c41",
  "state": "out_of_date",
  "moved": [
    "recycled_content_percentage"
  ],
  "fields": {
    "recycled_content_percentage": 42
  },
  "review_url": "https://passportcraft.com/passports/2c1f9e07-3b4d-4a18-9f6c-5e0a7b8d3c41/edit?proposal=9e2c4a71-3f68-4d05-8a9b-7c1e5f0d2b63",
  "requested_at": "2026-09-26T10:00:00.000Z",
  "expires_at": "2026-10-03T10:00:00.000Z",
  "decided_at": null,
  "livemode": true
}

GET /organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/proposals/9e2c4a71-3f68-4d05-8a9b-7c1e5f0d2b63

Retirer une proposition en attente.

post/organizations/{organization}/proposals/{id}/withdraw
Portée
passports:write
Idempotency-Key
Accepté
Renvoie
200

Paramètres de chemin

organizationchaîneObligatoire

L'organisation pour laquelle cette requête agit. La clé doit disposer d'une autorisation sur celle-ci.

idchaîneObligatoire

L'identifiant de la ressource. Traitez-le comme une chaîne opaque.

Erreurs

Tous les refus que ce point de terminaison peut renvoyer, avec le statut qui les accompagne.

Requête
curl "https://passportcraft.com/api/v1/organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/proposals/9e2c4a71-3f68-4d05-8a9b-7c1e5f0d2b63/withdraw" \
  -X POST \
  -H "Authorization: Bearer $PASSPORTCRAFT_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)"
Réponse · 200
{
  "object": "passport_proposal",
  "id": "9e2c4a71-3f68-4d05-8a9b-7c1e5f0d2b63",
  "name": "organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/proposals/9e2c4a71-3f68-4d05-8a9b-7c1e5f0d2b63",
  "passport_id": "2c1f9e07-3b4d-4a18-9f6c-5e0a7b8d3c41",
  "state": "withdrawn",
  "moved": [],
  "fields": {
    "recycled_content_percentage": 42
  },
  "review_url": "https://passportcraft.com/passports/2c1f9e07-3b4d-4a18-9f6c-5e0a7b8d3c41/edit?proposal=9e2c4a71-3f68-4d05-8a9b-7c1e5f0d2b63",
  "requested_at": "2026-09-26T10:00:00.000Z",
  "expires_at": "2026-10-03T10:00:00.000Z",
  "decided_at": "2026-09-26T11:00:00.000Z",
  "livemode": true
}

POST /organizations/8f14e45f-ceea-467a-9a5f-8dc7d9c6a1b2/proposals/9e2c4a71-3f68-4d05-8a9b-7c1e5f0d2b63/withdraw