En esta página se explica cómo añadir, ver, editar y quitar etiquetas en recursos de la API Cloud Healthcare. Las etiquetas son pares clave-valor que puede usar para organizar los recursos. Puedes asignar una etiqueta a recursos concretos y, después, filtrar los recursos en función de sus etiquetas. La información relacionada con las etiquetas se reenvía al sistema de facturación para que puedas desglosar los cargos de facturación por etiquetas.
Puedes usar etiquetas con los siguientes recursos de la API Cloud Healthcare:
- Almacenes FHIR
- Almacenes DICOM
- Almacenes de consentimientos
- Almacenes HL7v2
- Mensajes HL7v2
Las etiquetas están disponibles mediante las APIs REST o RPC. Las etiquetas no están disponibles en la consola de Google Cloud ni en la CLI. Google Cloud
Requisitos de las etiquetas
Las etiquetas aplicadas a un recurso deben cumplir los siguientes requisitos:
- Cada recurso puede tener varias etiquetas, hasta un máximo de 64.
- Cada etiqueta debe ser un par clave-valor.
- Las claves deben tener como mínimo 1 carácter y como máximo 63 caracteres, y no pueden estar vacías. Los valores pueden estar vacíos y tener una longitud máxima de 63 caracteres.
- Las claves y los valores solo pueden contener letras minúsculas, caracteres numéricos, guiones bajos y guiones. Todos los caracteres deben usar la codificación UTF-8 y se pueden usar caracteres internacionales.
- La clave de una etiqueta debe ser única en un solo recurso, pero puedes usar la misma clave con varios recursos.
- Las claves deben empezar por una letra minúscula o un carácter internacional.
Cómo añadir una etiqueta
En el siguiente ejemplo se muestra cómo añadir una etiqueta a un almacén FHIR.
Por ejemplo, puedes usar la etiqueta para indicar que el almacén de FHIR se está usando como entorno de pruebas. La clave de la etiqueta sería environment
y el valor, test
.
curl
Para añadir una etiqueta a un almacén FHIR, haz una solicitud PATCH
y especifica la siguiente información:
- Nombre del conjunto de datos principal
- Nombre del almacén FHIR
- Datos de la etiqueta que se va a actualizar.
- Una máscara de actualización definida como
labels
- Un token de acceso
En el siguiente ejemplo se muestra una solicitud PATCH
que utiliza curl
.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'labels': { 'KEY' : 'VALUE' } }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=labels"
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "labels": { "KEY": "VALUE" } }
PowerShell
Para añadir una etiqueta a un almacén FHIR, haz una solicitud PATCH
y especifica la siguiente información:
- Nombre del conjunto de datos principal
- Nombre del almacén FHIR
- Datos de la etiqueta que se va a actualizar.
- Una máscara de actualización definida como
labels
- Un token de acceso
En el siguiente ejemplo se muestra una solicitud PATCH
que utiliza Windows PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Patch ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'labels': { 'KEY': 'VALUE' } }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=labels" | Select-Object -Expand Content
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "labels": { "KEY": "VALUE" } }
Añadir varias etiquetas
En el siguiente ejemplo se muestra cómo añadir varias etiquetas a un almacén FHIR. Para añadir varias etiquetas, sepáralas con comas.
Por ejemplo, puedes usar las etiquetas para indicar que el almacén de FHIR se está usando como entorno de prueba y que lo utiliza un equipo de investigación.
La clave de la primera etiqueta sería environment
y el valor sería test
.
La clave de la segunda etiqueta sería team
y el valor sería research
.
curl
Para añadir varias etiquetas a un almacén FHIR, haz una solicitud PATCH
y especifica la siguiente información:
- Nombre del conjunto de datos principal
- Nombre del almacén FHIR
- Datos de la etiqueta que se van a actualizar como una lista de pares clave-valor separados por comas
- Una máscara de actualización definida como
labels
- Un token de acceso
En el siguiente ejemplo se muestra una solicitud PATCH
que utiliza curl
.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'labels': { 'KEY_1' : 'VALUE_1', 'KEY_2' : 'VALUE_2' } }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=labels"
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "labels": { "KEY_1": "VALUE_1", "KEY_2": "VALUE_2" } }
PowerShell
Para añadir una etiqueta a un almacén FHIR, haz una solicitud PATCH
y especifica la siguiente información:
- Nombre del conjunto de datos principal
- Nombre del almacén FHIR
- Datos de la etiqueta que se van a actualizar como una lista de pares clave-valor separados por comas
- Una máscara de actualización definida como
labels
- Un token de acceso
En el siguiente ejemplo se muestra una solicitud PATCH
que utiliza Windows PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Patch ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'labels': { 'KEY_1': 'VALUE_1', 'KEY_2': 'VALUE_2' } }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=labels" | Select-Object -Expand Content
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "labels": { "KEY_1": "VALUE_1", "KEY_2": "VALUE_2" } }
Listar y filtrar por etiquetas
Después de añadir una etiqueta a un recurso de la API Cloud Healthcare, puedes enumerar los recursos y filtrarlos por sus etiquetas. Por ejemplo, después de añadir una etiqueta a un almacén FHIR en los ejemplos anteriores, puedes enumerar los almacenes FHIR de tu conjunto de datos y filtrar por las etiquetas que hayas añadido.
Los mensajes HL7v2 tienen opciones de filtrado adicionales que puedes ver en projects.locations.datasets.hl7V2Stores.messages.list
.
curl
Para ver los almacenes FHIR de un conjunto de datos y filtrarlos por una etiqueta, haz una solicitud GET
y proporciona la siguiente información:
- Nombre del conjunto de datos principal
- Nombre del almacén FHIR
- Cadena de consulta que contiene la información por la que se va a filtrar.
- Un token de acceso
En el siguiente ejemplo se muestra una solicitud GET
que utiliza curl
.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores?filter=labels.KEY=VALUE"
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "fhirStores": [ { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "labels": { "KEY": "VALUE" } }, { ... } ] }
PowerShell
Para ver los almacenes FHIR de un conjunto de datos y filtrarlos por una etiqueta, haz una solicitud GET
y proporciona la siguiente información:
- Nombre del conjunto de datos principal
- Nombre del almacén FHIR
- Cadena de consulta que contiene la información por la que se va a filtrar.
- Un token de acceso
En el siguiente ejemplo se muestra una solicitud GET
que utiliza Windows PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores?filter=labels.KEY=VALUE" | Select-Object -Expand Content
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "fhirStores": [ { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "labels": { "KEY": "VALUE" } }, { ... } ] }
Eliminar una etiqueta
Puedes quitar una etiqueta de dos formas:
Para quitar la etiqueta por completo, es decir, tanto la clave como el valor, utilice el patrón de lectura-modificación-escritura siguiendo estos pasos:
- Lee las etiquetas actuales llamando al método
get()
del recurso. - Edita las etiquetas devueltas, ya sea mediante un editor de texto o de forma programática, para añadir o eliminar las claves aplicables y sus valores.
- Escribe las etiquetas actualizadas llamando al método
patch()
del recurso.
- Lee las etiquetas actuales llamando al método
Para conservar la clave y quitar el valor, asigna el valor
null
.
curl
En el siguiente ejemplo se muestra cómo quitar una etiqueta asignando el valor null
a la etiqueta.
Para quitar una etiqueta de un almacén FHIR, haz una solicitud PATCH
y especifica la siguiente información:
- Nombre del conjunto de datos principal
- Nombre del almacén FHIR
- Datos de la etiqueta que se va a actualizar.
- Una máscara de actualización definida como
labels
- Un token de acceso
En el siguiente ejemplo se muestra una solicitud PATCH
que utiliza curl
.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'labels': { 'KEY' : null } }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=labels"
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "labels": { "KEY": } }
PowerShell
En el siguiente ejemplo se muestra cómo quitar una etiqueta asignando el valor null
a la etiqueta.
Para quitar una etiqueta de un almacén FHIR, haz una solicitud PATCH
y especifica la siguiente información:
- Nombre del conjunto de datos principal
- Nombre del almacén FHIR
- Datos de la etiqueta que se va a actualizar.
- Una máscara de actualización definida como
labels
- Un token de acceso
En el siguiente ejemplo se muestra una solicitud PATCH
que utiliza Windows PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'labels': { 'KEY': nullresource_manager_api } }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=labels" | Select-Object -Expand Content
Si la solicitud se realiza de forma correcta, el servidor devuelve la respuesta en formato JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "labels": { "KEY": } }
Siguientes pasos
Consulta otros usos de las etiquetas con la API de Cloud Resource Manager.