Vai al contenuto

In sviluppoPresto disponibile

Docs

REST API + MCP — tutto documentato.

Spec OpenAPI 3.1, 16 strumenti, webhook GDPR, limiti per piano. Il riferimento per integrare PackMate.

Avvio rapido

Cinque minuti alla prima richiesta

Dall'installazione alla prima chiamata API autenticata. Funziona per REST e MCP.

  1. 1

    Installa PackMate su Shopify

    Click «Installa» nell'App Store. PackMate funziona su ogni piano, puoi iniziare in Free.

  2. 2

    Genera chiave API

    Impostazioni → API & MCP → Genera. Prefisso pm_live_ o pm_test_ per sandbox.

    pm_live_4f3a8b9c2d1e...
  3. 3

    Prima richiesta

    Usa curl o un client HTTP. Header X-API-Key autentica ogni richiesta.

    curl https://packmate.shop/api/v1/health \
      -H 'X-API-Key: pm_live_…'
  4. 4

    Prossimo: MCP

    Per IA, la stessa chiave funziona per il server MCP. Vedi /ai per Claude / ChatGPT.

Autenticazione

Chiavi API, scope, rotazione

PackMate usa chiavi API con header X-API-Key. SHA-256 hashed, scoped al negozio, rotazione in un click.

Formato chiave

Due prefissi: pm_live_ produzione, pm_test_ sandbox. Body 32 caratteri base62.

pm_live_4f3a8b9c2d1e7f6a5b4c3d2e1f0a9b8c

Formato header

Invia chiave in X-API-Key. Bearer in Authorization anche accettato.

X-API-Key: pm_live_…
# o
Authorization: Bearer pm_live_…

Rotazione

Genera nuova chiave, scambia, revoca vecchia. Fino a 5 chiavi attive per negozio.

DELETE /api/v1/keys/:key_id
Response: 204 No Content

Scope

Chiavi full read+write di default. Scoped keys in roadmap.

scope: read_only | label_only | full
Limiti di tasso

I limiti scalano col tuo piano

Limiti per minuto e burst. Burst smussati da token bucket. Piani Custom negoziano.

PianoReq / minBurstConcorrente
Free601205
Basic12024010
Pro30060025
Business600120050
Customneg.neg.neg.
Scorri per vedere di più

Al limite, ottieni 429 con header Retry-After. L'header indica quanti secondi attendere.

Codici di errore

Cosa significa quando qualcosa fallisce

Semantica HTTP standard con corpi di errore PackMate. Ogni errore include codice e messaggio.

CodiceSignificatoAzione
400
Bad request — corpo o query malformatoVerifica forma richiesta contro spec OpenAPI.
401
Non autorizzato — chiave API mancante o invalidaInvia header X-API-Key con chiave pm_live_ valida.
402
Pagamento richiesto — limite raggiuntoUpgrade o aspetta prossimo ciclo. Bulk-Reconciliation dopo upgrade.
403
Vietato — funzionalità fuori pianoSolo query_carrier_rates è plan-gated (Custom).
404
Non trovato — risorsa inesistenteVerifica ID. Ordine potrebbe non essere ancora sincronizzato.
422
Non processabile — validazione semantica fallitaLeggi error.message — tipicamente dimensioni mancanti.
429
Troppe richieste — limite raggiuntoBack-off via header Retry-After.
500
Errore interno — bug dalla nostra parteRetry una volta, poi email a support@packmate.shop con request_id.
503
Servizio non disponibile — manutenzione o DBRetry con backoff esponenziale. Status su status.packmate.shop.
Scorri per vedere di più
Errore client (4xx)Errore server (5xx)
Webhook

GDPR + ciclo di vita webhook

PackMate registra sei webhook Shopify. Quattro obbligatori GDPR, due operativi. Firmati HMAC-SHA256.

customers/redactRichiesto

Cliente richiede cancellazione. PackMate anonimizza in 30 giorni.

customers/data_requestRichiesto

Cliente richiede esportazione. PackMate compila in 30 giorni.

shop/redactRichiesto

Shopify lo invia circa 48 ore dopo la disinstallazione. PackMate elimina quindi tutti i dati del negozio dal proprio database.

app/uninstalledRichiesto

L'app è stata disinstallata. PackMate contrassegna il negozio come disinstallato, revoca le sue chiavi API e termina l'abbonamento. I dati vengono eliminati con shop/redact.

products/updateOpzionale

Prodotto cambiato — PackMate aggiorna dimensioni cached.

app/scopes_updateOpzionale

Scope cambiati — PackMate richiede ri-autorizzazione.

Tutti i webhook firmati HMAC-SHA256 con il tuo app secret. Verifica X-Shopify-Hmac-SHA256.

Pronto a integrare? Genera una chiave.

Installa, genera chiave, esegui prima richiesta — in meno di cinque minuti.