Sicurezza, credits e accesso
- Credits. I nove strumenti multimediali —
generate_image,edit_image,img2img,create_variations,resize_image,upscale_image,remove_background,vectorize_imageegenerate_video— prelevano dal pool di credits condiviso della tua organizzazione alle tariffe dell’app. Le letture e la gestione dei modelli sono gratuite. Controlla il saldo in qualsiasi momento conget_credit_balance. - Scope. Ogni strumento richiede uno scope. Una API key o un token OAuth espone solo gli strumenti consentiti dai suoi scope — restringi una chiave esattamente a ciò di cui un’integrazione ha bisogno.
- Revoca dell’accesso. Un admin revoca una API key in Settings → API Keys; la revoca è definitiva e ha effetto alla chiamata immediatamente successiva. Per una connessione OAuth, disconnetti il connector nel tuo client (impostazioni dei connector di Claude o ChatGPT); gli access token possono anche essere revocati all’endpoint di revoca OAuth di Samsa. Una credenziale revocata smette di funzionare immediatamente.
Risoluzione dei problemi
Richieste di accesso ripetute o 401
Richieste di accesso ripetute o 401
Un
401 è il server che chiede al client di (ri)autenticarsi.- Client OAuth: disconnetti il connector Samsa e riconnettiti per riavviare l’accesso. Se il consenso non si completa mai, faccelo sapere a support@samsa.ai.
- Client con API key: verifica che l’header sia esattamente
Authorization: Bearer samsa_sk_...e che la chiave sia valida — una chiave mancante, scaduta o revocata restituisce401 invalid_api_key. In caso di dubbio, crea una nuova chiave in Settings → API Keys.
Per quale organizzazione sto agendo?
Per quale organizzazione sto agendo?
Una credenziale agisce sempre per una sola organizzazione. Una API key
agisce per l’organizzazione che la possiede — per agire per un’altra org, usa una
chiave creata in quell’org. Una connessione OAuth agisce per l’account e
l’organizzazione con cui hai effettuato l’accesso — riconnettiti per cambiare. I
credits vengono prelevati da, e gli asset appaiono in, quell’organizzazione.
Chiamata a uno strumento rifiutata — credits insufficienti
Chiamata a uno strumento rifiutata — credits insufficienti
Se il saldo che questa connessione può spendere non copre una generazione, lo strumento
di invio restituisce un errore strutturato prima che qualsiasi job venga eseguito —
nulla viene addebitato. Il codice che ricevi dipende dallo scope di budget della
connessione:
insufficient_credits quando
l’organizzazione non ha team attivi,
insufficient_team_credits quando è
assegnata a un team con budget, altrimenti
insufficient_unallocated_credits.
Un guasto operativo nella detrazione stessa ricade sul generico
insufficient_credits qualunque sia il regime — riprova prima di acquistare
credits — e un’organizzazione di sistema esente dal budgeting per team resta nel
regime org anche con team attivi. Controlla get_credit_balance — il suo available è il numero in cui deve rientrare il
costo di un job, e il suo scope indica il regime di budget; sotto team o
unallocated, confronta plan_credits con scope.remaining per vedere quale dei due
vincola (sotto org, scope.remaining è null e solo plan_credits può vincolare) —,
poi ricarica, aumenta il budget
del team o esegui l’upgrade nell’app Samsa. Le letture sono
sempre gratuite.Rate limit o troppi job
Rate limit o troppi job
Tre limiti indipendenti possono rallentare una raffica di chiamate:
- Rate di richieste per chiave — 60 richieste/minuto; l’eccesso restituisce
rate_limited. - Concorrenza per organizzazione — al massimo 5 job in corso alla volta; un
sesto restituisce
too_many_active_jobs. Lascia finire i job (interrogaget_job_status) prima di inviarne altri. - Concorrenza del transport MCP — una raffica di richieste
/mcpsimultanee su un singolo worker può restituire un transitorio429 concurrency_limit_exceededconRetry-After: 1. Aspetta un secondo e riprova.
Uno strumento manca o dice che gli manca uno scope
Uno strumento manca o dice che gli manca uno scope
Gli strumenti che non puoi chiamare sono nascosti o rifiutati perché la credenziale
connessa non ha il loro scope. Per esempio,
generate_image necessita di images.generate. Modifica gli scope della chiave (o
emetti una nuova chiave) in Settings → API Keys, poi riconnettiti.
