Guida rapida
Cinque minuti dalla registrazione alla tua prima immagine marcata: una chiave gratuita e una richiesta. Ricevi la stessa immagine con una filigrana invisibile e Content Credentials firmate e con marca temporale, le marcature richieste dall’AI Act e dalla California.
URL di base
Tutti gli endpoint si trovano sotto https://api.kennmarq.com, solo tramite HTTPS. Richieste ed errori sono descritti nel riferimento API.
1. Crea un account
Registrati con la tua email di lavoro e confermala con il link che ti inviamo. La tua organizzazione e un progetto chiamato Default vengono creati automaticamente. Le chiavi si possono creare solo dopo la conferma della tua email.
2. Crea una chiave di test
Nella dashboard apri Chiavi API e crea una chiave nel progetto Default con ambiente Test e ambito mark. Copiala subito: ne conserviamo solo un hash, quindi viene mostrata una sola volta. Tienila sul tuo server, lontano da browser e app.
export KENNMARQ_API_KEY="sk_test_…"Le chiavi di test hanno una propria quota mensile (100 marcature nel piano Free, quante quelle di produzione nei piani a pagamento) e firmano con un certificato di test. Vedi chiavi, ambiti e ambienti.
3. Marca un’immagine
Invia un file PNG, JPEG o WebP come multipart form data, fino a 4 MB nella richiesta; un file più grande, fino a 25 MB, passa da un upload:
curl https://api.kennmarq.com/v1/mark \
-H "Authorization: Bearer $KENNMARQ_API_KEY" \
-F file=@image.png \
-F source=created \
-F model="FLUX.1 schnell" \
-F app_name="Acme Studio" \
-D headers.txt \
-o image.marked.pngAggiungi -F provider="Acme Inc." e -F app_version="2.1" e la marcatura conterrà tutti e cinque gli elementi della dichiarazione latente prevista in California; aggiungi -F markets=eu,us-ca per ottenere una ricevuta.
I brani (MP3, WAV, M4A) funzionano allo stesso modo. Una clip (MP4) viene marcata come job: la chiamata risponde 202 con il suo ID e GET /v1/marks/{id} restituisce la clip marcata quando è pronta (clip).
Il body della risposta è il file marcato. headers.txt contiene ciò che vorrai conservare:
HTTP/2 200
content-type: image/png
content-disposition: attachment; filename="image.marked.png"
x-mark-id: mk_4Q8oT1n6mWc2fLr0aZ9eYb
x-watermark-id: 1a2b3c4d5e6f7081
x-marks-used: 1
x-marks-limit: 1000
x-request-id: req_7Hc2kQm0Zt1L
x-ratelimit-limit: 10
x-ratelimit-remaining: 9
x-ratelimit-reset: 17926632604. Verifica le marcature
Qualsiasi lettore C2PA, come lo strumento open source c2patool, mostra il manifest firmato: il tipo di origine IA, il nome del tuo modello e della tua app, l’azione della filigrana e la marca temporale.
c2patool image.marked.pngOppure trascinala sul nostro verificatore gratuito, che legge entrambe le marcature nel tuo browser e, tramite la filigrana, trova le Content Credentials di una copia i cui metadati sono stati rimossi.
5. Passa in produzione
Crea una chiave nell’ambiente Produzione e limitala ai tuoi server con una lista di IP consentiti. Le chiavi di produzione e quelle di test hanno quote separate, quindi i test non consumano mai le marcature di produzione. Controlla il tuo utilizzo nella dashboard, nell’header X-Marks-Used o con GET /v1/usage.
Prossimi passi
- Tutte le opzioni di POST /v1/mark: formato di output, IPTC, conservazione delle credenziali in ingresso.
- Errori e limiti di frequenza.
- Il nostro server di marca temporale RFC 3161, per firmare in locale.
- Gli SDK per JavaScript e Python: una sola chiamata, che gestisce anche upload e job delle clip.