Come licenziare e scaricare una risorsa in modo sicuro

Ultimo aggiornamento: 3 mesi fa

La creazione della licenza e la creazione dell’URL originale sono separate, così i retry sono sicuri e gli URL freschi non vengono mai addebitati di nuovo.

1. Crea la licenza

POST /api/v2/licenses
Authorization: Bearer ACCESS_TOKEN
Content-Type: application/json
Idempotency-Key: 2bd25ec7-12da-45fc-9daa-67593b510932

{"media_id":123}

Usa una chiave univoca di 8 fino a 160 caratteri ASCII stampabili per il tentativo di selezione logica e conservala quando riprovi. Una nuova licenza restituisce 201; un replay idempotente restituisce 200 con lo stesso ID della licenza.

Cathopic verifica prima l’originale. In una singola transazione blocca l’abbonamento individuale o del team, controlla l’accesso ai contenuti e le eventuali quote condivise esistenti, consuma al massimo un download e registra l’entitlement, la cronologia e la licenza.

2. Richiedi l’URL originale

POST /api/v2/licenses/LICENSE_UUID/download-url
Authorization: Bearer ACCESS_TOKEN

L’URL scade dopo cinque minuti. Richiedi un nuovo URL per un nuovo download; non crearne un’altra. Cathopic ricava il percorso di archiviazione e non accetta mai un percorso arbitrario.

Errori importanti

  • subscription_required: nessun accesso a pagamento attivo.

  • media_type_not_in_plan: tipo non incluso.

  • download_balance_exhausted: non restano download con piano limitato.

  • file_unavailable: originale mancante; nessun addebito.

  • idempotency_key_conflict: la chiave è stata usata per un altro ID media.

Conserva il X-Request-Id per l’assistenza, ma non registrare mai token, segreti o URL firmati. Dopo risposte 429 o transienti 5xx, fai un backoff con jitter.

Questo articolo è stato utile?