PATCH/v1/cards/{card_id}
Aggiornare una scheda
update_card
Autenticazione
Invia una chiave API nell’intestazione Authorization: Authorization: Bearer <chiave>.
Parametri di percorso
card_idstringobbligatorio
Parametri di intestazione
Idempotency-KeystringChiave per ripetere in sicurezza una scrittura: da 1 a 255 caratteri ASCII stampabili; si consiglia un UUID v4 per ogni operazione logica. Un nuovo tentativo con la stessa chiave entro 24 ore non esegue di nuovo l’operazione: restituisce la risposta salvata (stato, intestazioni e corpo) con l’intestazione
Idempotency-Replayed: true. La stessa chiave con un metodo, un percorso, unContent-Typeo un corpo diversi restituisce409 api.idempotency_mismatch; mentre la prima richiesta è ancora in esecuzione,409 api.idempotency_in_progressconRetry-After: 1. Dopo una risposta 5xx o 429 la chiave viene rilasciata e un nuovo tentativo esegue di nuovo l’operazione. La chiave vale per l’organizzazione e per chi effettua la chiamata (chiave API, utente o chiave di una fonte personalizzata).length ≥ 1, length ≤ 255
X-View-AsstringSolo per le chiavi API con il ruolo
admin. Esegue la richiesta come il profilo dati<profile>[:viewer|verifier|editor], ad esempioemployee:viewer. La chiave di installazione non può usare questa intestazione (403).
Parametri cookie
kb_view_asstringCookie della modalità “View as” per una sessione.
POST /auth/view-aslo imposta eDELETE /auth/view-aslo cancella.
Corpo della richiesta
application/json
external_idstring | nullImposta o modifica l’
external_iddella scheda;""onulllo rimuove. Se un’altra scheda dell’organizzazione lo usa, la richiesta restituisce409 cards.external_id_taken. L’external_iddi una scheda proveniente da una fonte non cambia (409 cards.managed_by_source).length ≤ 512
metadataMetadataPatchtitlestring | nullowner_idinteger | nullverifier_idsarray of integer | nullverify_interval_daysinteger | null≥ 1, ≤ 3650
tagsarray of string | nullstatusstring | nullsource_urlstring | nullcategorystring | nullsensitiveboolean | nulltable_categoriesmap of object | null
Risposte
200Risposta riuscita
Intestazioni della risposta
RateLimit-PolicyLimiti in vigore, nel formato della bozza IETF
draft-ietf-httpapi-ratelimit-headers: elementi separati da virgole"<name>";q=<quota>;w=<window in seconds>.keyè la frequenza delle richieste della chiave API (la quota è il burst, la finestra è il tempo necessario a ricaricarla completamente; per una sessione èuser, senza credenzialiip);minute,dayemonthsono le quote dell’organizzazione per il minuto, il giorno e il mese di calendario in UTC.RateLimitQuanto resta di ciascun limite di
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimite della voce più restrittiva di
RateLimit-Policy(quella con meno richieste rimanenti).X-RateLimit-RemainingRichieste rimanenti nel limite più restrittivo.
X-RateLimit-ResetSecondi che mancano all’azzeramento del limite più restrittivo.
Idempotency-Replayedtrueindica che la risposta è stata ripetuta da quella salvata per questaIdempotency-Key: l’operazione non è stata eseguita di nuovo.
application/json
expandedCardExpandedpermissionsObjectPermissionListaccessstringValori ammessi:
wholepartialaccess_contactstringChi contattare per l’accesso (solo quando
access=partial).aclobjectCampi
verifybooleanobbligatoriowritebooleanobbligatorio
categorystringobbligatoriocategory_confidencenumber | nullobbligatoriocategory_lockedbooleanobbligatoriocategory_reviewbooleanobbligatoriocollectionstringobbligatoriocollection_idintegerobbligatoriocollection_titlestringcommentsarray of CardCommentcontent_jsonContentJSON | nullContenuto dell’editor dell’ultima versione pubblicata. Il campo può essere assente; in tal caso, ottieni il contenuto dell’editor da una bozza (
POST /v1/draftsconcard_id).editing_lockEditingLock | nullBlocco di modifica attivo. Il campo può essere assente; in tal caso, l’editor scopre chi detiene il blocco dalla risposta
409 cards.lockeddiPOST /v1/cards/{card_id}/lock.created_atstring (date-time)obbligatoriodays_since_verifiedintegerobbligatorioerrorstring | nullobbligatorioeventsarray of CardEventfeedback_negintegerobbligatoriofeedback_posintegerobbligatoriofoldersarray of CardFolderRefSolo nell’elenco delle schede: le cartelle che contengono la scheda (quelle visibili all’utente), con i loro percorsi dalla radice della raccolta. Un elenco vuoto indica che la scheda non è in nessuna cartella.
has_tablesbooleanSolo nell’elenco delle schede.
hidden_partsbooleanidstringobbligatoriojobJob | nullorg_idintegerobbligatorioowner_activeboolean | nullowner_idinteger | nullobbligatorioowner_namestring | nullobbligatoriopagesinteger | nullobbligatorioparserstring | nullobbligatorioMetodo di analisi del documento come codice neutro:
document(struttura completa: pagine, titoli, tabelle, pagine scansionate),pdf(il livello di testo del PDF),docx,xlsx,csv,markdown,html,text. L’elenco può crescere.sensitivebooleanobbligatoriosha256string | nullobbligatoriosizeintegerobbligatoriosnoozed_atstring (date-time) | nullsnoozed_byinteger | nullsnoozed_untilstring | nullsource_changedbooleanobbligatoriosource_pathstring | nullobbligatoriosource_urlstring | nullobbligatoriostatusstringobbligatorioValori ammessi:
processingreadyerrorarchivedtablesarray of CardTabletagsarray of stringobbligatoriotitlestringobbligatoriotrustnumberobbligatoriotrust_if_verifiednumberupdated_atstring (date-time)obbligatorioverified_atstring (date-time) | nullobbligatorioverified_byinteger | nullobbligatorioverified_by_namestring | nullverifier_idsarray of integerobbligatorioverifiersarray of objectCampi
activebooleanobbligatorioidintegerobbligatorionamestringobbligatorio
verify_interval_daysintegerobbligatorioversionintegerobbligatorioversionsarray of CardVersionsource_archiveArchiveSourcecreated_byinteger | nullmanual_optionsobjectImpostazioni manuali dell’analisi del documento (anteprima).
doc_kindDocKind | nullTipo di documento.
nullse il tipo non è determinato (ad esempio, per le schede indicizzate prima dell’introduzione dei tipi di documento).doc_kind_confidencenumber | nullLivello di confidenza nel tipo di documento, da 0 a 1.
doc_kind_sourcestring | nullChe cosa ha determinato il tipo: regole (
rules), un utente (manual) o la classificazione automatica. L’elenco può crescere: tratta un valore sconosciuto come classificazione automatica.Valori ammessi:
rulesmanualnullinvoiceDocInvoiceExtraction | nullCampi di una fattura, nota di credito o ricevuta (solo per questi tipi, e solo nella scheda, non nell’elenco).
nullse non hai accesso all’intero documento, perché i campi vengono estratti dall’intero documento.warningsarray of ReviewWarningAvvisi dell’analisi del documento (
ReviewWarning; solo nella scheda, non nell’elenco).enrichmentCardEnrichmentStatus | nullStato dell’arricchimento (solo nella scheda, non nell’elenco). Il tipo di documento, i campi della fattura e i dati finanziari vengono aggiunti in background dopo l’indicizzazione e possono essere ricalcolati in seguito; compaiono nella scheda quando sono pronti.
nullindica che non è disponibile alcuno stato (la scheda è stata indicizzata senza arricchimento in background).external_idstring | nullID della scheda nel sistema dell’integratore. È univoco nell’organizzazione tra le schede che non provengono da fonti;
nullindica che non è impostato./v1/cards-by-external-id/{external_id}legge e sostituisce la scheda tramite questo ID.length ≤ 512
metadataMetadata
400La richiesta non è valida: il valore di un parametro o lo stato dell’oggetto non consente l’azione (`detail` è un messaggio).
Intestazioni della risposta
RateLimit-PolicyLimiti in vigore, nel formato della bozza IETF
draft-ietf-httpapi-ratelimit-headers: elementi separati da virgole"<name>";q=<quota>;w=<window in seconds>.keyè la frequenza delle richieste della chiave API (la quota è il burst, la finestra è il tempo necessario a ricaricarla completamente; per una sessione èuser, senza credenzialiip);minute,dayemonthsono le quote dell’organizzazione per il minuto, il giorno e il mese di calendario in UTC.RateLimitQuanto resta di ciascun limite di
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimite della voce più restrittiva di
RateLimit-Policy(quella con meno richieste rimanenti).X-RateLimit-RemainingRichieste rimanenti nel limite più restrittivo.
X-RateLimit-ResetSecondi che mancano all’azzeramento del limite più restrittivo.
application/json
401Non sono state inviate credenziali (né un cookie di sessione né una chiave API), oppure la chiave non è stata trovata.
Intestazioni della risposta
RateLimit-PolicyLimiti in vigore, nel formato della bozza IETF
draft-ietf-httpapi-ratelimit-headers: elementi separati da virgole"<name>";q=<quota>;w=<window in seconds>.keyè la frequenza delle richieste della chiave API (la quota è il burst, la finestra è il tempo necessario a ricaricarla completamente; per una sessione èuser, senza credenzialiip);minute,dayemonthsono le quote dell’organizzazione per il minuto, il giorno e il mese di calendario in UTC.RateLimitQuanto resta di ciascun limite di
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimite della voce più restrittiva di
RateLimit-Policy(quella con meno richieste rimanenti).X-RateLimit-RemainingRichieste rimanenti nel limite più restrittivo.
X-RateLimit-ResetSecondi che mancano all’azzeramento del limite più restrittivo.
application/json
403L’azione non è consentita: il ruolo non è sufficiente, manca l’accesso alla raccolta o alla scheda, la richiesta viene eseguita in modalità “View as”, oppure l’organizzazione è sospesa o eliminata (`detail` è un oggetto con `code: org_suspended | org_deleted`).
Intestazioni della risposta
RateLimit-PolicyLimiti in vigore, nel formato della bozza IETF
draft-ietf-httpapi-ratelimit-headers: elementi separati da virgole"<name>";q=<quota>;w=<window in seconds>.keyè la frequenza delle richieste della chiave API (la quota è il burst, la finestra è il tempo necessario a ricaricarla completamente; per una sessione èuser, senza credenzialiip);minute,dayemonthsono le quote dell’organizzazione per il minuto, il giorno e il mese di calendario in UTC.RateLimitQuanto resta di ciascun limite di
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimite della voce più restrittiva di
RateLimit-Policy(quella con meno richieste rimanenti).X-RateLimit-RemainingRichieste rimanenti nel limite più restrittivo.
X-RateLimit-ResetSecondi che mancano all’azzeramento del limite più restrittivo.
application/json
404L’oggetto non esiste o non è disponibile per te. L’API non conferma l’esistenza di un oggetto con accesso limitato.
Intestazioni della risposta
RateLimit-PolicyLimiti in vigore, nel formato della bozza IETF
draft-ietf-httpapi-ratelimit-headers: elementi separati da virgole"<name>";q=<quota>;w=<window in seconds>.keyè la frequenza delle richieste della chiave API (la quota è il burst, la finestra è il tempo necessario a ricaricarla completamente; per una sessione èuser, senza credenzialiip);minute,dayemonthsono le quote dell’organizzazione per il minuto, il giorno e il mese di calendario in UTC.RateLimitQuanto resta di ciascun limite di
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimite della voce più restrittiva di
RateLimit-Policy(quella con meno richieste rimanenti).X-RateLimit-RemainingRichieste rimanenti nel limite più restrittivo.
X-RateLimit-ResetSecondi che mancano all’azzeramento del limite più restrittivo.
application/json
422Errore di validazione: il corpo o i parametri non corrispondono allo schema (`detail` è un elenco di errori di validazione), oppure il valore di un parametro è fuori dall’intervallo ammesso (`detail` è un messaggio).
Intestazioni della risposta
RateLimit-PolicyLimiti in vigore, nel formato della bozza IETF
draft-ietf-httpapi-ratelimit-headers: elementi separati da virgole"<name>";q=<quota>;w=<window in seconds>.keyè la frequenza delle richieste della chiave API (la quota è il burst, la finestra è il tempo necessario a ricaricarla completamente; per una sessione èuser, senza credenzialiip);minute,dayemonthsono le quote dell’organizzazione per il minuto, il giorno e il mese di calendario in UTC.RateLimitQuanto resta di ciascun limite di
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimite della voce più restrittiva di
RateLimit-Policy(quella con meno richieste rimanenti).X-RateLimit-RemainingRichieste rimanenti nel limite più restrittivo.
X-RateLimit-ResetSecondi che mancano all’azzeramento del limite più restrittivo.
application/json
429Troppe richieste (`api.rate_limited`), la quota dell’organizzazione per il minuto, il giorno o il mese è esaurita (`api.quota_exceeded`; `error.details` contiene `quota`, `limit` e `reset_at`), è stato raggiunto il limite dell’organizzazione, oppure il servizio delle risposte è occupato (`answers.engine_busy`). Attendi il tempo indicato nell’intestazione `Retry-After`.
Intestazioni della risposta
Retry-AfterNumero di secondi da attendere prima di ripetere la richiesta.
RateLimit-PolicyLimiti in vigore, nel formato della bozza IETF
draft-ietf-httpapi-ratelimit-headers: elementi separati da virgole"<name>";q=<quota>;w=<window in seconds>.keyè la frequenza delle richieste della chiave API (la quota è il burst, la finestra è il tempo necessario a ricaricarla completamente; per una sessione èuser, senza credenzialiip);minute,dayemonthsono le quote dell’organizzazione per il minuto, il giorno e il mese di calendario in UTC.RateLimitQuanto resta di ciascun limite di
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitLimite della voce più restrittiva di
RateLimit-Policy(quella con meno richieste rimanenti).X-RateLimit-RemainingRichieste rimanenti nel limite più restrittivo.
X-RateLimit-ResetSecondi che mancano all’azzeramento del limite più restrittivo.
application/json
Codici di errore
Codici che questo endpoint può restituire in error.code, oltre ai codici generali di ogni richiesta.
- 400api.metadata_invalid
- 409api.idempotency_in_progress
- 400api.idempotency_key_invalid
- 409api.idempotency_mismatch
- 401auth.not_authenticated
- 403auth.system_scope
- 403cards.category_whole_access
- 409cards.external_id_taken
- 409cards.managed_by_source
- 403cards.no_access
- 404cards.not_found
- 403cards.sensitivity_admin_only
- 400cards.unknown_table_part
- 400categories.unknown
- 403org.deleted
- 403org.suspended
- 400users.inactive_assignment
- 400users.not_in_org
- 403view_as.read_only
Nuovi tentativi sicuri
Invia un’intestazione Idempotency-Key (per esempio un UUID) con ogni POST e PATCH. Un nuovo tentativo con la stessa chiave entro 24 ore restituisce la risposta salvata invece di eseguire di nuovo la richiesta.
Limiti di frequenza
Le risposte contengono le intestazioni RateLimit e RateLimit-Policy e le precedenti X-RateLimit-Limit, X-RateLimit-Remaining e X-RateLimit-Reset. Una risposta 429 contiene Retry-After in secondi: attendi e riprova.