Shadow API Discovery:管理 API

總覽

本頁面提供參考語法,說明如何透過 Apigee 管理 (APIM) API 管理 Apigee Shadow API Discovery。如要查看與 Shadow API Discovery 相關的管理 API 說明文件,包括要求中的每個欄位資訊,請前往 https://cloud.google.com/apigee/docs/reference/apis/apim/resthttps://cloud.google.com/apigee/docs/reference/apis/apim/rpc

如需 Shadow API Discovery 的概略說明,以及如何透過 Cloud 控制台中的 Apigee UI 管理這項服務,請參閱「Shadow API Discovery」。如要瞭解 Shadow API Discovery 的一般行為和限制,請參閱「行為和限制」。

參照 API 呼叫中的參數

本頁的 API 呼叫可使用下列參數,這些參數會參照您的 Apigee 帳戶資訊 (例如專案),或建立觀察工作時所用的資訊。如要進一步瞭解這些欄位,請參閱「建立觀察工作」。

  • OBSERVATION_JOB_LOCATION 是觀察工作的地點。
  • OBSERVATION_JOB_NAME 是觀察工作名稱。
  • OBSERVATION_SOURCE_LOCATION 是觀察工作來源位置。
  • OBSERVATION_SOURCE_NAME 是觀察來源名稱。
  • PROJECT 是您的 Apigee 專案。

建立觀測工作

建立觀測工作需要多個步驟/API 要求。

  1. 建立觀測來源:如要建立新的觀測來源,而非使用現有來源,請向觀測來源端點提出含有觀測來源詳細資料的 POST 要求。
    curl \ https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources?observation_source_id=OBSERVATION_SOURCE_NAME \
    -X POST \
    -H 'Content-type: application/json' \
    -d @- <<'EOF'
    {
      "gclbObservationSource": {
        "pscNetworkConfigs": [
          {
            "network": "projects/PROJECT/global/networks/{network_name}",
            "subnetwork":"projects/PROJECT/regions/OBSERVATION_SOURCE_LOCATION/subnetworks/{subnet_name}"
          }
        ]
      }
    }
    EOF
    建立觀察來源需要幾分鐘的時間,並會啟動 LRO,回應如下:
    {
    "name": "projects/{project/locations/OBSERVATION_SOURCE_LOCATION/operations/operation-",
    "metadata": {
      "@type": "type.googleapis.com/google.cloud.apim.vl.ApiDiscoveryOperationMetadata",
      "createTime": "",
      "target": "projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources/OBSERVATION_SOURCE_NAME",
      "verb": "create",
      "requestedCancellation": false,
      "apiVersion": "vl"
    },
    "done": false
    }
  2. 如要查看新建的觀測來源,請按照下列步驟操作:
    curl \
    https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources/OBSERVATION_SOURCE_NAME
  3. 建立觀測工作:建立工作,使用您剛才建立的來源尋找影像 API:
    curl \
    https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs?observation_job_id=OBSERVATION_JOB_NAME \
    -X POST \
    -H 'Content-type: application/json' \
    -d @- <<'EOF'
    {
      "sources": [
        "projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources/OBSERVATION_SOURCE_NAME"
      ]
    }
    EOF

啟用觀測工作

使用下列指令啟用新的觀察工作或已停用的現有工作。

curl https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs/OBSERVATION_JOB_NAME:enable \
-X POST \
-H 'Content-type: application/json' \
-d @- <<'EOF'
{}
EOF

查看已探索的 API

如要查看已啟用觀察工作所偵測到的 API,請提交以下指令:

curl https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs/OBSERVATION_JOB_NAME/apiObservations \
-X GET

管理觀察結果的標記

如要列出已新增至結果的標記,請按照下列步驟操作:

curl -H "https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION:listApiObservationTags"
  

如要管理標記,請按照下列步驟操作:

curl -H "Content-Type: appication/json" \
"https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs/OBSERVATION_JOB_NAME/apiObservations:batchEditTags" \
-X POST -d @- <<'EOF'
{
  "requests": [
    {
      "apiObservationId": "API_OBSERVATION_ID",
      "tagActions": [
      {
        "tag": "demo",
        "action": "REMOVE"
      },
      {
        "tag": "Needs Attentions",
        "action": "ADD"
      }]
    }
  ]
}
EOF

停用觀測工作

這項要求會停用觀察作業,但不會刪除。

curl https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationsJobs/OBSERVATION_JOB_NAME:disable \
-X POST \
-H 'Content-type: application/json' \
-d @- <<'EOF'
{
}

刪除觀測工作

這項要求會刪除觀測工作。

curl -X DELETE https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs/OBSERVATION_JOB_NAME

刪除觀測來源

這項要求會刪除觀察來源。

curl -X DELETE https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources/OBSERVATION_SOURCE_NAME