Questo documento descrive come gestire i documenti in Document AI Warehouse, incluse le operazioni di creazione, recupero, aggiornamento ed eliminazione.
Che cosa sono i documenti
Un documento è il modello dei dati utilizzato in Document AI Warehouse per organizzare un documento reale (ad esempio PDF o TXT) e le relative proprietà. Interagisci con Document AI Warehouse tramite operazioni sui documenti.
Tipi di file supportati
Sebbene l'obiettivo di Document AI Warehouse siano i documenti, viene utilizzato anche per gestire le immagini associate (ad esempio, in settori verticali come assicurazioni, ingegneria, edilizia e ricerca).
- L'API Ingest supporta PDF e immagini TIFF, JPEG e PNG, insieme a eventuali proprietà o testo pre-estratto.
- L'UI di caricamento supporta l'estrazione di PDF utilizzando Document AI OCR e processori personalizzati.
- L'UI del visualizzatore supporta il rendering in file PDF, di testo e di Microsoft Office.
Prima di iniziare
Prima di iniziare, assicurati di aver completato la pagina Guida rapida.
Per la creazione di documenti, se i dati si trovano nel tuo bucket Cloud Storage, devi concedere al account di servizio account di Document AI Warehouse l'autorizzazione di visualizzatore di oggetti Storage per leggere i tuoi dati.
Ogni documento è specificato da uno schema e appartiene a un tipo di documento. Uno schema di documento definisce la struttura del documento in Document AI Warehouse. Prima di poter creare documenti, devi creare uno schema di documento.
Crea un documento
Per creare un documento, devi fornire i contenuti del documento non elaborati a Document AI Warehouse. I due modi per fornire i contenuti dei byte del documento non elaborati sono impostando Document.inline_raw_document o Document.raw_document_path.
Le differenze sono le seguenti:
Document.raw_document_path: questo è l'approccio preferito. Utilizza il percorso Cloud Storage (gs://bucket/object) del file da importare. Tieni presente che il chiamante deve disporre dell'autorizzazione di lettura per questo oggetto affinché la chiamata vada a buon fine.Document.inline_raw_document: rappresentazione di byte/testo del file, fornita direttamente all'endpoint.
Per creare un documento:
Carica un documento da Cloud Storage
Devi concedere al account di servizio di Document AI Warehouse l'accesso al tuo bucket Cloud Storage come descritto nella sezione dei prerequisiti.
Devi caricare il file in un bucket Cloud Storage seguendo le istruzioni.
REST
Richiesta:
curl --location --request POST --url https://contentwarehouse.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/documents \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json; charset=utf-8" \
--data '{
"document": {
"display_name": "TestDoc3",
"document_schema_name": "projects/PROJECT_NUMBER/locations/LOCATION/documentSchemas/DOCUMENT_SCHEMA_ID",
"raw_document_path": "gs://BUCKET_URI/FILE_URI",
"properties": [
{
"name": "supplier_name",
"text_values": {
"values": "Stanford Plumbing & Heating"
}
},
{
"name": "total_amount",
"float_values": {
"values": "1091.81"
}
},
]
},
"requestMetadata":{
"userInfo":{
"id": "user:USER_EMAIL_ID"
}
}
}'Carica da una macchina locale
REST
Richiesta:
curl --location --request POST --url https://contentwarehouse.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/documents/ \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json; charset=utf-8" \
--data '{
"document": {
"display_name": "TestDoc3",
"document_schema_name": "projects/PROJECT_NUMBER/locations/LOCATION/documentSchemas/DOCUMENT_SCHEMA_ID",
"inline_raw_document": "<bytes>",
"properties": [
{
"name": "supplier_name",
"text_values": {
"values": "Stanford Plumbing & Heating"
}
},
{
"name": "total_amount",
"float_values": {
"values": "1091.81"
}
},
]
},
"requestMetadata": {
"userInfo": {
"id": "user:USER_EMAIL_ID"
}
}
}'Recupera un documento
Per document_id:
REST
curl --request POST \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json; charset=UTF-8" -d '{
"requestMetadata":{
"userInfo":{
"id": "user:USER_EMAIL"
}
}
}' \
"https://contentwarehouse.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/documents/DOCUMENT_ID:get"Python
Per saperne di più, consulta la documentazione di riferimento dell'API Document AI Warehouse Python.
Per eseguire l'autenticazione in Document AI Warehouse, configura le credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Per saperne di più, consulta la Documentazione di riferimento dell'Java API di Document AI Warehouse.
Per eseguire l'autenticazione in Document AI Warehouse, configura le credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per saperne di più, consulta la documentazione di riferimento dell'API Document AI Warehouse Node.js.
Per eseguire l'autenticazione in Document AI Warehouse, configura le credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Per reference_id:
curl --request POST \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json; charset=UTF-8" -d '{
"requestMetadata":{
"userInfo":{
"id": "user:USER_EMAIL"
}
}
}' \
"https://contentwarehouse.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/documents/referenceId/REFERENCE_ID:get"Aggiorna un documento
Per document_id:
REST
posix-terminal
curl --location --request POST --url https://contentwarehouse.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/documents \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json; charset=utf-8" \
--data '{
"document": {
"display_name": "TestDoc3",
"document_schema_name": "projects/PROJECT_NUMBER/locations/LOCATION/documentSchemas/DOCUMENT_SCHEMA_ID",
"raw_document_path": "gs://BUCKET_URI/FILE_URI",
"properties": [
{
"name": "supplier_name",
"text_values": {
"values": "Stanford Plumbing & Heating"
}
},
{
"name": "total_amount",
"float_values": {
"values": "1091.81"
}
},
{
"name": "invoice_id",
"text_values": {
"values": "invoiceid"
}
},
]
},
"requestMetadata": {
"userInfo": {
"id": "user:USER_EMAIL"
}
}
}'
Python
Per saperne di più, consulta la documentazione di riferimento dell'API Document AI Warehouse Python.
Per eseguire l'autenticazione in Document AI Warehouse, configura le credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Per saperne di più, consulta la Documentazione di riferimento dell'Java API di Document AI Warehouse.
Per eseguire l'autenticazione in Document AI Warehouse, configura le credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Per reference_id:
curl --location --request POST --url https://contentwarehouse.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/documents \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json; charset=utf-8" \
--data '{
"document": {
"display_name": "TestDoc3",
"document_schema_name": "projects/PROJECT_NUMBER/locations/LOCATION/documentSchemas/referenceId/REFERENCE_ID",
"raw_document_path": "gs://BUCKET_URI/FILE_URI",
"properties": [
{
"name": "supplier_name",
"text_values": {
"values": "Stanford Plumbing & Heating"
}
},
{
"name": "total_amount",
"float_values": {
"values": "1091.81"
}
},
{
"name": "invoice_id",
"text_values": {
"values": "invoiceid"
}
},
]
},
"requestMetadata": {
"userInfo": {
"id": "user:USER_EMAIL"
}
}
}'Elimina un documento
REST
Per document_id:
curl --request POST \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json; charset=UTF-8" -d '{
"requestMetadata":{
"userInfo":{
"id": "user:USER_EMAIL"
}
}
}' \
"https://contentwarehouse.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/documents/DOCUMENT_ID:delete"Per reference_id:
curl --request POST \
--header "Authorization: Bearer $(gcloud auth print-access-token)" \
--header "Content-Type: application/json; charset=UTF-8" -d '{
"requestMetadata":{
"userInfo":{
"id": "user:USER_EMAIL"
}
}
}' \
"https://contentwarehouse.googleapis.com/v1/projects/PROJECT_NUMBER/locations/LOCATION/documents/referenceId/REFERENCE_ID":delete"Passaggi successivi
- Vai a Organizza i documenti in cartelle per scoprire come organizzare i documenti nelle cartelle.