Utilizzo delle etichette delle risorse

Questa pagina mostra come aggiungere, visualizzare, modificare e rimuovere etichette sulle risorse dell'API Cloud Healthcare. Le etichette sono coppie chiave-valore utilizzabili per organizzare le risorse. Puoi associare un'etichetta a singole risorse, quindi filtrare le risorse in base alle relative etichette. Le informazioni sulle etichette vengono inoltrate al sistema di fatturazione, quindi puoi suddividere gli addebiti per etichetta.

Puoi utilizzare le etichette con le seguenti risorse dell'API Cloud Healthcare:

  • Archivi FHIR
  • Archivi DICOM
  • Archivi di consensi
  • Archivi HL7v2
  • Messaggi HL7v2

Le etichette sono disponibili utilizzando le API REST o RPC. Le etichette non sono disponibili in Google Cloud CLI o nella console Google Cloud.

Requisiti delle etichette

Le etichette applicate a una risorsa devono soddisfare i seguenti requisiti:

  • Ogni risorsa può avere più etichette, fino a un massimo di 64.
  • Ogni etichetta deve essere una coppia chiave-valore.
  • Le chiavi hanno una lunghezza minima di 1 carattere e una lunghezza massima di 63 caratteri e non possono essere vuote. I valori possono essere vuoti e avere una lunghezza massima di 63 caratteri.
  • Le chiavi e i valori possono contenere solo lettere minuscole, caratteri numerici, trattini bassi e trattini. Tutti i caratteri devono utilizzare la codifica UTF-8 e sono consentiti caratteri internazionali.
  • La chiave di un'etichetta deve essere univoca in una singola risorsa, ma puoi utilizzare la stessa chiave con più risorse.
  • Le chiavi devono iniziare con una lettera minuscola o un carattere internazionale.

Aggiunta di un'etichetta

L'esempio seguente mostra come aggiungere un'etichetta a un datastore FHIR esistente.

Ad esempio, puoi usare l'etichetta per indicare che il datastore FHIR viene utilizzato come ambiente di test. La chiave dell'etichetta sarebbe environment e il valore sarebbe test.

curl

Per aggiungere un'etichetta a un datastore FHIR esistente, effettua una richiesta PATCH e specifica le seguenti informazioni:

  • Il nome del set di dati padre
  • Il nome del datastore FHIR
  • I dati delle etichette da aggiornare
  • Una maschera di aggiornamento impostata su labels
  • Un token di accesso

Il seguente esempio mostra una richiesta PATCH che utilizza 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"

Se la richiesta ha esito positivo, il server restituisce la risposta in formato JSON:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID",
  "labels": {
    "KEY": "VALUE"
  }
}

PowerShell

Per aggiungere un'etichetta a un datastore FHIR esistente, effettua una richiesta PATCH e specifica le seguenti informazioni:

  • Il nome del set di dati padre
  • Il nome del datastore FHIR
  • I dati delle etichette da aggiornare
  • Una maschera di aggiornamento impostata su labels
  • Un token di accesso

Il seguente esempio mostra una richiesta PATCH mediante 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

Se la richiesta ha esito positivo, il server restituisce la risposta in formato JSON:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID",
  "labels": {
    "KEY": "VALUE"
  }
}

Aggiungere più etichette

Il seguente esempio mostra come aggiungere più etichette a un datastore FHIR esistente. Per aggiungere più etichette, separa ciascuna etichetta con una virgola.

Ad esempio, puoi utilizzare le etichette per indicare che il datastore FHIR viene utilizzato come ambiente di test e per un team di ricerca.

La chiave per la prima etichetta sarebbe environment e il valore sarebbe test. La chiave per la seconda etichetta sarebbe team e il valore sarebbe research.

curl

Per aggiungere più etichette a un datastore FHIR esistente, effettua una richiesta PATCH e specifica le seguenti informazioni:

  • Il nome del set di dati padre
  • Il nome del datastore FHIR
  • I dati delle etichette da aggiornare sotto forma di elenco di coppie chiave-valore delimitato da virgole
  • Una maschera di aggiornamento impostata su labels
  • Un token di accesso

Il seguente esempio mostra una richiesta PATCH che utilizza 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"

Se la richiesta ha esito positivo, il server restituisce la risposta in 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

Per aggiungere un'etichetta a un datastore FHIR esistente, effettua una richiesta PATCH e specifica le seguenti informazioni:

  • Il nome del set di dati padre
  • Il nome del datastore FHIR
  • I dati delle etichette da aggiornare sotto forma di elenco di coppie chiave-valore delimitato da virgole
  • Una maschera di aggiornamento impostata su labels
  • Un token di accesso

Il seguente esempio mostra una richiesta PATCH mediante 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

Se la richiesta ha esito positivo, il server restituisce la risposta in formato JSON:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID",
  "labels": {
    "KEY_1": "VALUE_1",
    "KEY_2": "VALUE_2"
  }
}

Elenco e filtro per etichette

Dopo aver aggiunto un'etichetta a una risorsa API Cloud Healthcare, puoi elencare le risorse e filtrarle in base alle etichette. Ad esempio, dopo aver aggiunto un'etichetta a un datastore FHIR negli esempi precedenti, puoi elencare i datastore FHIR nel set di dati e filtrare in base alle etichette aggiunte.

I messaggi HL7v2 hanno opzioni di filtro aggiuntive che puoi visualizzare in projects.locations.datasets.hl7V2Stores.messages.list.

curl

Per visualizzare i datastore FHIR in un set di dati e filtrarli in base a un'etichetta, effettua una richiesta GET e fornisci le seguenti informazioni:

  • Il nome del set di dati padre
  • Il nome del datastore FHIR
  • Una stringa di query contenente le informazioni in base alle quali filtrare
  • Un token di accesso

Il seguente esempio mostra una richiesta GET che utilizza 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"

Se la richiesta ha esito positivo, il server restituisce la risposta in formato JSON:

{
  "fhirStores": [
    {
      "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID",
      "labels": {
        "KEY": "VALUE"
      }
    },
    {
      ...
    }
  ]
}

PowerShell

Per visualizzare i datastore FHIR in un set di dati e filtrarli in base a un'etichetta, effettua una richiesta GET e fornisci le seguenti informazioni:

  • Il nome del set di dati padre
  • Il nome del datastore FHIR
  • Una stringa di query contenente le informazioni in base alle quali filtrare
  • Un token di accesso

Il seguente esempio mostra una richiesta GET mediante 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

Se la richiesta ha esito positivo, il server restituisce la risposta in formato JSON:

{
  "fhirStores": [
    {
      "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID",
      "labels": {
        "KEY": "VALUE"
      }
    },
    {
      ...
    }
  ]
}

Rimuovere un'etichetta

Puoi rimuovere un'etichetta in due modi:

  • Per rimuovere completamente l'etichetta, ovvero rimuovere la chiave e il valore, utilizza il pattern di lettura, modifica e scrittura, procedendo nel seguente modo:

    1. Legge le etichette attuali chiamando il metodo get() della risorsa.
    2. Modifica le etichette restituite utilizzando un editor di testo o in modo programmatico per aggiungere o rimuovere eventuali chiavi applicabili e i relativi valori.
    3. Scrivi le etichette aggiornate chiamando il metodo patch() della risorsa.
  • Per mantenere la chiave e rimuovere il valore, imposta il valore su null.

curl

Il seguente esempio mostra come rimuovere un'etichetta impostando il valore dell'etichetta su null.

Per rimuovere un'etichetta da un datastore FHIR esistente, effettua una richiesta PATCH e specifica le seguenti informazioni:

  • Il nome del set di dati padre
  • Il nome del datastore FHIR
  • I dati delle etichette da aggiornare
  • Una maschera di aggiornamento impostata su labels
  • Un token di accesso

Il seguente esempio mostra una richiesta PATCH che utilizza 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"

Se la richiesta ha esito positivo, il server restituisce la risposta in formato JSON:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID",
  "labels": {
    "KEY":
  }
}

PowerShell

Il seguente esempio mostra come rimuovere un'etichetta impostando il valore dell'etichetta su null.

Per rimuovere un'etichetta da un datastore FHIR esistente, effettua una richiesta PATCH e specifica le seguenti informazioni:

  • Il nome del set di dati padre
  • Il nome del datastore FHIR
  • I dati delle etichette da aggiornare
  • Una maschera di aggiornamento impostata su labels
  • Un token di accesso

Il seguente esempio mostra una richiesta PATCH mediante 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

Se la richiesta ha esito positivo, il server restituisce la risposta in formato JSON:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID",
  "labels": {
    "KEY":
  }
}

Passaggi successivi

Scopri altri utilizzi delle etichette con l'API Cloud Resource Manager.