אחסון נתונים בריאותיים באמצעות curl ו-PowerShell

בדף הזה מוסבר איך להשתמש ב-Cloud Healthcare API וב-curl או ב-PowerShell כדי לבצע את המשימות הבאות:

  1. יוצרים מערך נתונים של Cloud Healthcare API.
  2. יוצרים אחד ממאגרי הנתונים הבאים בתוך מערך הנתונים:
    • מאגר של Digital Imaging and Communications in Medicine‏ (DICOM)
    • מאגר Fast Healthcare Interoperability Resources (FHIR)
    • מאגר Health Level Seven International Version 2‏ (HL7v2)
  3. אחסון ובדיקה של סוג מסוים של נתונים רפואיים במאגר DICOM,‏ FHIR או HL7v2.

אם אתם רוצים לעבוד רק עם סוג אחד של מאגר נתונים, אתם יכולים לדלג ישירות לקטע הזה במדריך לתחילת העבודה אחרי שתשלימו את השלבים שבקטעים לפני שמתחילים ויצירת מערך נתונים.

לפני שמתחילים

  1. נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
  2. התקינו את ה-CLI של Google Cloud.

  3. אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

  4. כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:

    gcloud init
  5. יוצרים או בוחרים Google Cloud פרויקט.

    תפקידים שנדרשים כדי לבחור או ליצור פרויקט

    • Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
    • יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (roles/resourcemanager.projectCreator), שכולל את ההרשאה resourcemanager.projects.create. איך מקצים תפקידים
    • יוצרים Google Cloud פרויקט:

      gcloud projects create PROJECT_ID

      מחליפים את PROJECT_ID בשם של פרויקט Google Cloud שיוצרים.

    • בוחרים את הפרויקט שיצרתם: Google Cloud

      gcloud config set project PROJECT_ID

      מחליפים את PROJECT_ID בשם הפרויקט ב- Google Cloud .

  6. מוודאים שהחיוב מופעל בפרויקט Google Cloud .

  7. מפעילים את Cloud Healthcare API, אם הוא עדיין לא מופעל:

    תפקידים שנדרשים להפעלת ממשקי API

    כדי להפעיל ממשקי API, נדרשת ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים

    gcloud services enable healthcare.googleapis.com
  8. מעניקים תפקידים לחשבון המשתמש. מריצים את הפקודה הבאה לכל אחד מהתפקידים הבאים ב-IAM: roles/healthcare.datasetAdmin, roles/healthcare.fhirStoreAdmin, roles/healthcare.dicomStoreAdmin, roles/healthcare.hl7V2StoreAdmin

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE

    מחליפים את מה שכתוב בשדות הבאים:

    • ‫PROJECT_ID: מזהה הפרויקט.
    • ‫USER_IDENTIFIER: המזהה של חשבון המשתמש . לדוגמה, myemail@example.com.
    • ‫ROLE: תפקיד ה-IAM שאתם מקצים לחשבון המשתמש.
  9. התקינו את ה-CLI של Google Cloud.

  10. אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

  11. כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:

    gcloud init
  12. יוצרים או בוחרים Google Cloud פרויקט.

    תפקידים שנדרשים כדי לבחור או ליצור פרויקט

    • Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
    • יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (roles/resourcemanager.projectCreator), שכולל את ההרשאה resourcemanager.projects.create. איך מקצים תפקידים
    • יוצרים Google Cloud פרויקט:

      gcloud projects create PROJECT_ID

      מחליפים את PROJECT_ID בשם של פרויקט Google Cloud שיוצרים.

    • בוחרים את הפרויקט שיצרתם: Google Cloud

      gcloud config set project PROJECT_ID

      מחליפים את PROJECT_ID בשם הפרויקט ב- Google Cloud .

  13. מוודאים שהחיוב מופעל בפרויקט Google Cloud .

  14. מפעילים את Cloud Healthcare API, אם הוא עדיין לא מופעל:

    תפקידים שנדרשים להפעלת ממשקי API

    כדי להפעיל ממשקי API, נדרשת ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים

    gcloud services enable healthcare.googleapis.com
  15. מעניקים תפקידים לחשבון המשתמש. מריצים את הפקודה הבאה לכל אחד מהתפקידים הבאים ב-IAM: roles/healthcare.datasetAdmin, roles/healthcare.fhirStoreAdmin, roles/healthcare.dicomStoreAdmin, roles/healthcare.hl7V2StoreAdmin

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE

    מחליפים את מה שכתוב בשדות הבאים:

    • ‫PROJECT_ID: מזהה הפרויקט.
    • ‫USER_IDENTIFIER: המזהה של חשבון המשתמש . לדוגמה, myemail@example.com.
    • ‫ROLE: תפקיד ה-IAM שאתם מקצים לחשבון המשתמש.

יצירת מערך נתונים

מערכי נתונים מכילים מאגרי נתונים, ומאגרי נתונים מכילים נתונים בתחום הבריאות. כדי להשתמש ב-Cloud Healthcare API, צריך ליצור לפחות מערך נתונים אחד.

בדוגמה הבאה אפשר לראות איך יוצרים מערך נתונים בשם my-dataset באזור us-central1. במדריך הזה לשימוש מהיר תשתמשו במערך הנתונים כדי ליצור מאגרי DICOM, מאגרי FHIR ומאגרי HL7v2.

REST

  1. יוצרים את מערך הנתונים באמצעות ה-method‏ projects.locations.datasets.create.

    לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

    כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

    curl

    מריצים את הפקודה הבאה:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    -d "" \
    "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets?datasetId=my-dataset"

    PowerShell

    מריצים את הפקודה הבאה:

    $cred = gcloud auth print-access-token
    $headers = @{ "Authorization" = "Bearer $cred" }

    Invoke-WebRequest `
    -Method POST `
    -Headers $headers `
    -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets?datasetId=my-dataset" | Select-Object -Expand Content

    APIs Explorer

    פותחים את דף העזר של ה-method. החלונית של API Explorer תיפתח בצד שמאל של הדף. אפשר להשתמש בכלי הזה כדי לשלוח בקשות. ממלאים את כל שדות החובה ולוחצים על Execute.

    הפלט שיתקבל: התשובה מכילה מזהה של פעולה ממושכת (LRO). פעולות ארוכות טווח מוחזרות כשקריאות לשיטות עשויות להימשך זמן נוסף עד להשלמה. שימו לב לערך של OPERATION_ID. תצטרכו להשתמש בערך הזה בשלב הבא.

  2. כדי לקבל את הסטטוס של הפעולה הממושכת, משתמשים בשיטה projects.locations.datasets.operations.get.

    לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

    • ‫PROJECT_ID: מזהה הפרויקט ב- Google Cloud
    • ‫OPERATION_ID: המזהה שמוחזר מהפעולה הממושכת

    כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

    curl

    מריצים את הפקודה הבאה:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/operations/OPERATION_ID"

    PowerShell

    מריצים את הפקודה הבאה:

    $cred = gcloud auth print-access-token
    $headers = @{ "Authorization" = "Bearer $cred" }

    Invoke-WebRequest `
    -Method GET `
    -Headers $headers `
    -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/operations/OPERATION_ID" | Select-Object -Expand Content

    APIs Explorer

    פותחים את דף העזר של ה-method. החלונית של API Explorer תיפתח בצד שמאל של הדף. אפשר להשתמש בכלי הזה כדי לשלוח בקשות. ממלאים את כל שדות החובה ולוחצים על Execute.

    הפלט שיתקבל: כשהתשובה מכילה את הערך "done": true, הפעולה הממושכת הסתיימה.

כדי להשלים את המדריך למתחילים הזה, בוחרים באחד מהקטעים הבאים:

איך מאחסנים וצופים במופע DICOM

בקטע הזה מוסבר איך לבצע את המשימות הבאות:

  1. יוצרים מאגר DICOM.
  2. אחסון מופע DICOM בחנות DICOM.
  3. צפייה במטא-נתונים של מופע DICOM.

‫Cloud Healthcare API מיישם את התקן DICOMweb כדי לאחסן נתונים של הדמיה רפואית ולגשת אליהם.

יצירת מאגר DICOM

מאגרי DICOM נמצאים בתוך מערכי נתונים ומכילים מופעי DICOM. בדוגמה הבאה אפשר לראות איך יוצרים מאגר DICOM בשם my-dicom-store.

REST

יוצרים מאגר DICOM באמצעות השיטה projects.locations.datasets.dicomStores.create.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores?dicomStoreId=my-dicom-store"

PowerShell

מריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores?dicomStoreId=my-dicom-store" | Select-Object -Expand Content

APIs Explorer

פותחים את דף העזר של ה-method. החלונית של API Explorer תיפתח בצד שמאל של הדף. אפשר להשתמש בכלי הזה כדי לשלוח בקשות. ממלאים את כל שדות החובה ולוחצים על Execute.

אתם אמורים לקבל תגובת JSON שדומה לזו:

שמירת מופע DICOM

  1. מורידים למחשב את קובץ המופע לדוגמה של DICOM. הקובץ מכיל צילום רנטגן של מטופל שעבר הסרת פרטים מזהים.

    curl

    curl -O https://cloud.google.com/healthcare-api/docs/resources/dicom_00000001_000.dcm

    PowerShell

    Invoke-WebRequest -Uri "https://cloud.google.com/healthcare-api/docs/resources/dicom_00000001_000.dcm" -OutFile $pwd/dicom_00000001_000.dcm
  2. שומרים את מופע ה-DICOM באמצעות ה-method‏ dicomStores.storeInstances. במדריך למתחילים הזה מניחים שאתם מריצים את הפקודה באותה ספרייה שבה הורדתם את מופע ה-DICOM.

    REST

    לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

    כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

    curl

    מריצים את הפקודה הבאה:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/dicom" \
    --data-binary @dicom_00000001_000.dcm \
    "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb/studies"

    PowerShell

    מריצים את הפקודה הבאה:

    $cred = gcloud auth print-access-token
    $headers = @{ "Authorization" = "Bearer $cred" }

    Invoke-WebRequest `
    -Method POST `
    -Headers $headers `
    -InFile dicom_00000001_000.dcm `
    -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb/studies" | Select-Object -Expand Content

    הפלט הוא תגובת ה-XML הבאה. בדוגמה הזו:

    • ‫PROJECT_ID, us-central1, my-dataset, my-dicom-store: הערכים שסיפקתם כשמריצים את הפקודה
    • ‫SOPClassUID: מזהה באופן ייחודי את המחלקה Service-Object Pair (SOP)
    • ‫SOPInstanceUID: מזהה באופן ייחודי את מופע Service-Object Pair ‏ (SOP)
    • ‫STUDY_UID: מזהה באופן ייחודי את מופע המחקר
    • ‫SERIES_UID: מזהה באופן ייחודי את מופע הסדרה
    • ‫INSTANCE_UID: מזהה באופן ייחודי את המכונה

צפייה במטא-נתונים של מופע DICOM

REST

אפשר לראות את המטא-נתונים של המכונה באמצעות השיטה dicomStores.searchForInstances.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb/instances"

PowerShell

מריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb/instances" | Select-Object -Expand Content

APIs Explorer

פותחים את דף העזר של ה-method. החלונית של API Explorer תיפתח בצד שמאל של הדף. אפשר להשתמש בכלי הזה כדי לשלוח בקשות. ממלאים את כל שדות החובה ולוחצים על Execute.

אתם אמורים לקבל תגובת JSON שדומה לזו:

אחרי שמאחסנים את מופע ה-DICOM וצופים בו ב-Cloud Healthcare API, ממשיכים אל ניקוי כדי להימנע מחיובים בחשבון Google Cloud על המשאבים שבהם השתמשתם בדף הזה.

מידע נוסף על עבודה עם נתוני DICOM זמין במאמר מה עושים עכשיו.

אחסון משאבי FHIR והצגתם

בקטע הזה מוסבר איך לבצע את המשימות הבאות:

  1. יוצרים מאגר FHIR.
  2. אחסון משאב FHIR בחנות FHIR.
  3. צפייה בנתונים של משאב FHIR.

‫Cloud Healthcare API מטמיע את תקן FHIR כדי לאחסן נתוני FHIR ולגשת אליהם.

יצירת מאגר FHIR

מאגרי FHIR קיימים בתוך מערכי נתונים ומכילים משאבי FHIR. בדוגמה הבאה מוצג איך ליצור מאגר FHIR בשם my-fhir-store שמשתמש בגרסה R4 של FHIR.

REST

יוצרים מאגר FHIR באמצעות ה-method‏ projects.locations.datasets.fhirStores.create.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

תוכן בקשת JSON:

{
  "version": "R4"
}

כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:

curl

שומרים את גוף הבקשה בקובץ בשם request.json. כדי ליצור או להחליף את הקובץ הזה בספרייה הנוכחית, מריצים את הפקודה הבאה בטרמינל:

cat > request.json << 'EOF'
{
  "version": "R4"
}
EOF

לאחר מכן מבצעים את הפקודה הבאה כדי לשלוח את בקשת ה-REST:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores?fhirStoreId=my-fhir-store"

PowerShell

שומרים את גוף הבקשה בקובץ בשם request.json. כדי ליצור או להחליף את הקובץ הזה בספרייה הנוכחית, מריצים את הפקודה הבאה בטרמינל:

@'
{
  "version": "R4"
}
'@  | Out-File -FilePath request.json -Encoding utf8

לאחר מכן מבצעים את הפקודה הבאה כדי לשלוח את בקשת ה-REST:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores?fhirStoreId=my-fhir-store" | Select-Object -Expand Content

APIs Explorer

מעתיקים את גוף הבקשה ופותחים את דף העזר של השיטה. החלונית של API Explorer תיפתח בצד שמאל של הדף. אפשר להשתמש בכלי הזה כדי לשלוח בקשות. מדביקים את גוף הבקשה בכלי הזה, ממלאים את כל שדות החובה ולוחצים על Execute.

אתם אמורים לקבל תגובת JSON שדומה לזו:

אחסון משאב FHIR

REST

יוצרים משאב Patient בחנות FHIR באמצעות ה-method ‏projects.locations.datasets.fhirStores.fhir.create.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

תוכן בקשת JSON:

{
  "name": [
    {
      "use": "official",
      "family": "Smith",
      "given": [
        "Darcy"
      ]
    }
  ],
  "gender": "female",
  "birthDate": "1970-01-01",
  "resourceType": "Patient"
}

כדי לשלוח את הבקשה עליכם לבחור אחת מהאפשרויות הבאות:

curl

שומרים את גוף הבקשה בקובץ בשם request.json. כדי ליצור או להחליף את הקובץ הזה בספרייה הנוכחית, מריצים את הפקודה הבאה בטרמינל:

cat > request.json << 'EOF'
{
  "name": [
    {
      "use": "official",
      "family": "Smith",
      "given": [
        "Darcy"
      ]
    }
  ],
  "gender": "female",
  "birthDate": "1970-01-01",
  "resourceType": "Patient"
}
EOF

לאחר מכן מבצעים את הפקודה הבאה כדי לשלוח את בקשת ה-REST:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/fhir+json" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient"

PowerShell

שומרים את גוף הבקשה בקובץ בשם request.json. כדי ליצור או להחליף את הקובץ הזה בספרייה הנוכחית, מריצים את הפקודה הבאה בטרמינל:

@'
{
  "name": [
    {
      "use": "official",
      "family": "Smith",
      "given": [
        "Darcy"
      ]
    }
  ],
  "gender": "female",
  "birthDate": "1970-01-01",
  "resourceType": "Patient"
}
'@  | Out-File -FilePath request.json -Encoding utf8

לאחר מכן מבצעים את הפקודה הבאה כדי לשלוח את בקשת ה-REST:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/fhir+json" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient" | Select-Object -Expand Content

אתם אמורים לקבל תגובת JSON שדומה לזו:

צפייה בתוכן של משאב FHIR

REST

אפשר להציג מידע על משאב Patient באמצעות השיטה projects.locations.datasets.fhirStores.fhir.search.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient"

PowerShell

מריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient" | Select-Object -Expand Content

אתם אמורים לקבל תגובת JSON שדומה לזו:

{
  "entry": [
    {
      "fullUrl": "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient/PATIENT_ID",
      "resource": {
        "birthDate": "1970-01-01",
        "gender": "female",
        "id": "PATIENT_ID",
        "meta": {
          "lastUpdated": "YYYY-MM-DDTHH:MM:SS+ZZ:ZZ",
          "versionId": "MTY5MDQxMDk5ODU1OTkxNTAwMA"
        },
        "name": [
          {
            "family": "Smith",
            "given": [
              "Darcy"
            ],
            "use": "official"
          }
        ],
        "resourceType": "Patient"
      },
      "search": {
        "mode": "match"
      }
    }
  ],
  "link": [
    {
      "relation": "search",
      "url": "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient/?"
    },
    {
      "relation": "first",
      "url": "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient/?"
    },
    {
      "relation": "self",
      "url": "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store/fhir/Patient/?"
    }
  ],
  "resourceType": "Bundle",
  "total": 1,
  "type": "searchset"
}

אחרי שמאחסנים וצופים במשאב FHIR ב-Cloud Healthcare API, ממשיכים אל ניקוי כדי להימנע מחיובים בחשבון Google Cloud על המשאבים שבהם השתמשתם בדף הזה.

מידע נוסף על עבודה עם נתוני FHIR זמין במאמר מה השלב הבא.

אחסון והצגה של הודעת HL7v2

בקטע הזה מוסבר איך לבצע את המשימות הבאות:

  1. יוצרים מאגר HL7v2.
  2. אחסון הודעת HL7v2 במאגר HL7v2.
  3. צפייה בנתוני ההודעה בפורמט HL7v2.

ההטמעה של HL7v2 ב-Cloud Healthcare API תואמת לתקן HL7v2.

יצירת מאגר HL7v2

מאגרי HL7v2 קיימים בתוך מערכי נתונים ומכילים הודעות HL7v2. בדוגמה הבאה אפשר לראות איך ליצור מאגר HL7v2 בשם my-hl7v2-store.

REST

יוצרים מאגר HL7v2 באמצעות ה-method‏ projects.locations.datasets.hl7V2Stores.create.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores?hl7V2StoreId=my-hl7v2-store"

PowerShell

מריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores?hl7V2StoreId=my-hl7v2-store" | Select-Object -Expand Content

APIs Explorer

פותחים את דף העזר של ה-method. החלונית של API Explorer תיפתח בצד שמאל של הדף. אפשר להשתמש בכלי הזה כדי לשלוח בקשות. ממלאים את כל שדות החובה ולוחצים על Execute.

אתם אמורים לקבל תגובת JSON שדומה לזו:

יצירת הודעת HL7v2

  1. מורידים את קובץ ההודעות לדוגמה בפורמט HL7v2 למחשב:

    curl

    curl -O https://cloud.google.com/healthcare-api/docs/resources/hl7v2-sample.json

    PowerShell

    Invoke-WebRequest -Uri "https://cloud.google.com/healthcare-api/docs/resources/hl7v2-sample.json" -OutFile $pwd/hl7v2-sample.json

    ההודעה ב-HL7v2 מכילה את המידע הבא, שמקודד בפורמט base-64 בשדה data של קובץ הדוגמה:

    MSH|^~\&|A|SEND_FACILITY|A|A|20180101000000||TYPE^A|20180101000000|T|0.0|||AA||00|ASCII
    EVN|A00|20180101040000
    PID||14^111^^^^MRN|11111111^^^^MRN~1111111111^^^^ORGNMBR
    
  2. אחסון ההודעה בפורמט HL7v2 במאגר HL7v2 באמצעות השיטה projects.locations.datasets.hl7V2Stores.messages.create. במדריך הזה מניחים שאתם מריצים את הפקודה באותה ספרייה שבה הורדתם את הודעת HL7v2.

    REST

    לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

    כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

    curl

    מריצים את הפקודה הבאה:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    --data-binary @hl7v2-sample.json \
    "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store/messages"

    PowerShell

    מריצים את הפקודה הבאה:

    $cred = gcloud auth print-access-token
    $headers = @{ "Authorization" = "Bearer $cred" }

    Invoke-WebRequest `
    -Method POST `
    -Headers $headers `
    -InFile hl7v2-sample.json `
    -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store/messages" | Select-Object -Expand Content

    APIs Explorer

    פותחים את דף העזר של ה-method. החלונית של API Explorer תיפתח בצד שמאל של הדף. אפשר להשתמש בכלי הזה כדי לשלוח בקשות. ממלאים את כל שדות החובה ולוחצים על Execute.

    הפלט שיתקבל: בדוגמה הזו:

    • ‫PROJECT_ID, us-central1, my-dataset, my-hl7v2-store: הערכים שסיפקתם בקריאה לשיטה
    • ‫MESSAGE_ID: מזהה של הודעת HL7v2 שסופק על ידי Cloud Healthcare API. שימו לב לערך של MESSAGE_ID. תצטרכו את הערך הזה בשלב הבא.

צפייה בתוכן של הודעות HL7v2

מחפשים את MESSAGE_ID בתשובה שקיבלתם כשנוצרה הודעת HL7v2.

REST

אפשר להציג את פרטי ההודעה בפורמט HL7v2 באמצעות השיטה projects.locations.datasets.hl7V2stores.messages.get.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫PROJECT_ID: המזהה של Google Cloud הפרויקט שיצרתם או בחרתם בקטע לפני שמתחילים
  • ‫HL7V2_MESSAGE_ID: המזהה בתגובה שקיבלתם כשיצרתם את הודעת HL7v2

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store/messages/HL7V2_MESSAGE_ID"

PowerShell

מריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store/messages/HL7V2_MESSAGE_ID" | Select-Object -Expand Content

APIs Explorer

פותחים את דף העזר של ה-method. החלונית של API Explorer תיפתח בצד שמאל של הדף. אפשר להשתמש בכלי הזה כדי לשלוח בקשות. ממלאים את כל שדות החובה ולוחצים על Execute.

אתם אמורים לקבל תגובת JSON שדומה לזו:

אחרי שמאחסנים את ההודעה בפורמט HL7v2 וצופים בה ב-Cloud Healthcare API, ממשיכים אל ניקוי כדי להימנע מחיובים בחשבון Google Cloud על המשאבים שבהם השתמשתם בדף הזה.

מידע נוסף על עבודה עם נתוני HL7v2 זמין במאמר מה עושים עכשיו.

הסרת המשאבים

כדי לא לצבור חיובים בחשבון Google Cloud על המשאבים שבהם השתמשתם בדף הזה, אתם צריכים למחוק את הפרויקט Google Cloud יחד עם המשאבים.

אם יצרתם פרויקט חדש בשביל המדריך למתחילים הזה, אתם יכולים לפעול לפי השלבים במאמר מחיקת הפרויקט. אחרת, מבצעים את השלבים שבקטע מחיקת מערך הנתונים.

אם רוצים, מבטלים את פרטי הכניסה של ה-CLI של gcloud.

gcloud auth revoke

מחיקת הפרויקט

    כדי למחוק Google Cloud פרויקט:

    gcloud projects delete PROJECT_ID

מחיקת מערך הנתונים

אם כבר אין לכם צורך במערך הנתונים שנוצר בתחילת העבודה המהירה הזו, אתם יכולים למחוק אותו. מחיקה של מערך נתונים מוחקת אותו באופן סופי, וגם את כל מאגרי הנתונים של FHIR, ‏ HL7v2 או DICOM שהוא מכיל.

REST

מוחקים את מערך הנתונים באמצעות השיטה projects.locations.datasets.delete.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

כדי לשלוח את הבקשה אתם צריכים לבחור אחת מהאפשרויות הבאות:

curl

מריצים את הפקודה הבאה:

curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset"

PowerShell

מריצים את הפקודה הבאה:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset" | Select-Object -Expand Content

APIs Explorer

פותחים את דף העזר של ה-method. החלונית של API Explorer תיפתח בצד שמאל של הדף. אפשר להשתמש בכלי הזה כדי לשלוח בקשות. ממלאים את כל שדות החובה ולוחצים על Execute.

אמורים לקבל קוד סטטוס של הצלחה (2xx) ותגובה ריקה.

איך היה?

המאמרים הבאים

בקטעים הבאים מופיע מידע כללי על Cloud Healthcare API והסבר איך לבצע את המשימות במדריך למתחילים הזה באמצעות ממשק אחר:

DICOM

בהצהרת התאימות ל-DICOM מוסבר איך Cloud Healthcare API מיישם את תקן DICOMweb.

FHIR

בהצהרת התאימות ל-FHIR מוסבר איך Cloud Healthcare API מיישם את תקן FHIR.

HL7v2