Um conjunto de produtos é um contêiner simples para um grupo de produtos.
Como criar um conjunto de produtos vazio
É melhor usar um único conjunto de produtos para todos os seus itens e criar outros conjuntos de produtos para os testes que forem necessários. Nos exemplos de código a seguir, mostramos como criar um conjunto de produtos vazio.
REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID pelo ID do projeto no Google Cloud.
- LOCATION_ID: um identificador de local válido. Os identificadores de local válidos são:
us-west1
,us-east1
,europe-west1
easia-east1
. - DISPLAY_NAME: um nome de exibição de string de sua escolha.
Método HTTP e URL:
POST https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets
Corpo JSON da solicitação:
{ "displayName": "display-name" }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets"
PowerShell
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets" | Select-Object -Expand Content
Quando a solicitação é bem-sucedida, o servidor retorna um código de status HTTP 200 OK
e a
resposta no formato JSON:
Será exibido um código semelhante a este. É possível usar o ID do conjunto de produtos
(neste caso, b6d809615b6dd675
) para executar outras operações no conjunto de produtos.
{ "name": "projects/project-id/locations/location-id/productSets/b6d809615b6dd675", "displayName": "new-product-set" }
Go
Para saber como instalar e usar a biblioteca de cliente da Pesquisa de produtos da API Vision, consulte Bibliotecas de cliente do Pesquisa de produtos da API Vision. Para mais informações, consulte a documentação de referência da API Go do Product Search da API Vision.
Para se autenticar no Vision API Product Search, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca de cliente da Pesquisa de produtos da API Vision, consulte Bibliotecas de cliente do Pesquisa de produtos da API Vision. Para mais informações, consulte a documentação de referência da API Java do Product Search da API Vision.
Para se autenticar no Vision API Product Search, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca de cliente da Pesquisa de produtos da API Vision, consulte Bibliotecas de cliente do Pesquisa de produtos da API Vision. Para mais informações, consulte a documentação de referência da API Node.js do Product Search da API Vision.
Para se autenticar no Vision API Product Search, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca de cliente da Pesquisa de produtos da API Vision, consulte Bibliotecas de cliente do Pesquisa de produtos da API Vision. Para mais informações, consulte a documentação de referência da API Python do Product Search da API Vision.
Para se autenticar no Vision API Product Search, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Outras linguagens
C#: Siga as Instruções de configuração do C# na página das bibliotecas de cliente e acesse a Documentação de referência da Pesquisa de produtos da API Vision para .NET.
PHP: Siga as: Instruções de configuração do PHP na página das bibliotecas de cliente e acesse a Documentação de referência da Pesquisa de produtos da API Vision para PHP.
Ruby: Siga as Instruções de configuração do Ruby na página das bibliotecas de cliente e acesse a Documentação de referência da Pesquisa de produtos da API Vision para Ruby.
Usar a importação em massa para criar um conjunto de produtos com produtos
Também é possível usar a função de importação em massa para criar simultaneamente um conjunto de produtos, criar vários produtos e as imagens de referência deles.
Várias referências do conjunto de produtos, dos produtos e das imagens de referência estão definidas no arquivo CSV de importação em massa que você usa. Para mais informações, consulte a seção Como formatar um arquivo CSV de importação em massa.
Realize a importação em massa executando este código:
REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID pelo ID do projeto no Google Cloud.
- LOCATION_ID: um identificador de local válido. Os identificadores de local válidos são:
us-west1
,us-east1
,europe-west1
easia-east1
. - STORAGE_PATH: um bucket/diretório do Cloud Storage em que o arquivo CSV de entrada é armazenado O usuário solicitante precisa ter, pelo menos, permissão de leitura no bucket.
Método HTTP e URL:
POST https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets:import
Corpo JSON da solicitação:
{ "inputConfig": { "gcsSource": { "csvFileUri": "storage-path" } } }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets:import"
PowerShell
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://vision.googleapis.com/v1/projects/project-id/locations/location-id/productSets:import" | Select-Object -Expand Content
Será exibido um código semelhante a este. Use o ID da operação
(neste caso, f10f34e32c40a710
) para receber o status da tarefa. Veja um
exemplo em Como saber o status de uma operação:
{ "name": "projects/project-id/locations/location-id/operations/f10f34e32c40a710" }
Depois que a operação de longa duração for concluída, será possível conseguir os detalhes da operação de importação. A resposta será assim:
{ "name": "locations/location-id/operations/f10f34e32c40a710", "metadata": { "@type": "type.googleapis.com/google.cloud.vision.v1.BatchOperationMetadata", "state": "SUCCESSFUL", "submitTime": "2019-12-06T21:16:04.476466873Z", "endTime": "2019-12-06T21:16:40.594258084Z" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.vision.v1.ImportProductSetsResponse", "referenceImages": [ { "name": "projects/project-id/locations/location-id/products/product_id0/referenceImages/image0", "uri": "gs://my-storage-bucket/img_039.jpg" }, { "name": "projects/project-id/locations/location-id/products/product_id1/referenceImages/image1", "uri": "gs://my-storage-bucket/img_105.jpg" }, { "name": "projects/project-id/locations/location-id/products/product_id2/referenceImages/image2", "uri": "gs://my-storage-bucket/img_224.jpg" }, { "name": "projects/project-id/locations/location-id/products/product_id3/referenceImages/image3", "uri": "gs://my-storage-bucket/img_385.jpg" } ], "statuses": [ {}, {}, {}, {} ] } }
Go
Para saber como instalar e usar a biblioteca de cliente da Pesquisa de produtos da API Vision, consulte Bibliotecas de cliente do Pesquisa de produtos da API Vision. Para mais informações, consulte a documentação de referência da API Go do Product Search da API Vision.
Para se autenticar no Vision API Product Search, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Para saber como instalar e usar a biblioteca de cliente da Pesquisa de produtos da API Vision, consulte Bibliotecas de cliente do Pesquisa de produtos da API Vision. Para mais informações, consulte a documentação de referência da API Java do Product Search da API Vision.
Para se autenticar no Vision API Product Search, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Node.js
Para saber como instalar e usar a biblioteca de cliente da Pesquisa de produtos da API Vision, consulte Bibliotecas de cliente do Pesquisa de produtos da API Vision. Para mais informações, consulte a documentação de referência da API Node.js do Product Search da API Vision.
Para se autenticar no Vision API Product Search, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Python
Para saber como instalar e usar a biblioteca de cliente da Pesquisa de produtos da API Vision, consulte Bibliotecas de cliente do Pesquisa de produtos da API Vision. Para mais informações, consulte a documentação de referência da API Python do Product Search da API Vision.
Para se autenticar no Vision API Product Search, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Outras linguagens
C#: Siga as Instruções de configuração do C# na página das bibliotecas de cliente e acesse a Documentação de referência da Pesquisa de produtos da API Vision para .NET.
PHP: Siga as: Instruções de configuração do PHP na página das bibliotecas de cliente e acesse a Documentação de referência da Pesquisa de produtos da API Vision para PHP.
Ruby: Siga as Instruções de configuração do Ruby na página das bibliotecas de cliente e acesse a Documentação de referência da Pesquisa de produtos da API Vision para Ruby.
Como saber o status de uma operação
Várias operações solicitadas são de longa duração, como a criação do conjunto de produtos por importação em massa, a limpeza de um conjunto de produtos e a limpeza de produtos órfãos. Esses tipos de solicitações retornarão um JSON com um ID de operação que pode ser usado para receber o status da operação.
Por exemplo, uma exclusão em lote (purge
) request retorna o seguinte JSON:
{ "name": "projects/project-id/locations/location-id/operations/bc4e1d412863e626" }
Nesse caso, o ID da operação é bc4e1d412863e626
. Os exemplos a seguir
mostram como receber o status dessa operação com esse ID.
REST
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID pelo ID do projeto no Google Cloud.
- LOCATION_ID: um identificador de local válido. Os identificadores de local válidos são:
us-west1
,us-east1
,europe-west1
easia-east1
. - OPERATION_ID: o ID da operação. Ele é o último elemento do nome
da operação. Por exemplo:
- nome da operação:
projects/PROJECT_ID/locations/LOCATION_ID/operations/bc4e1d412863e626
- ID da operação:
bc4e1d412863e626
- nome da operação:
Método HTTP e URL:
GET https://vision.googleapis.com/v1/locations/location-id/operations/operation-id
Para enviar a solicitação, escolha uma destas opções:
curl
execute o seguinte comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
"https://vision.googleapis.com/v1/locations/location-id/operations/operation-id"
PowerShell
execute o seguinte comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://vision.googleapis.com/v1/locations/location-id/operations/operation-id" | Select-Object -Expand Content
{ "name": "locations/location-id/operations/operation-id", "metadata": { "@type": "type.googleapis.com/google.cloud.vision.v1.BatchOperationMetadata", "state": "SUCCESSFUL", "submitTime": "2019-09-04T15:58:39.131591882Z", "endTime": "2019-09-04T15:58:43.099020580Z" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.vision.v1.PurgeProductsRequest", "parent": "projects/project-id/locations/location-id", "productSetPurgeConfig": { "productSetId": "project-set-id" }, "force": true } }
Você verá uma saída semelhante à seguinte para uma operação de limpeza de produtos órfãos:
{ "name": "locations/location-id/operations/operation-id", "metadata": { "@type": "type.googleapis.com/google.cloud.vision.v1.BatchOperationMetadata", "state": "SUCCESSFUL", "submitTime": "2019-09-04T16:08:38.278197397Z", "endTime": "2019-09-04T16:08:45.075778639Z" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.vision.v1.PurgeProductsRequest", "parent": "projects/project-id/locations/location-id", "deleteOrphanProducts": true, "force": true } }