종속 항목 관리

이 페이지는 ApigeeApigee Hybrid에 적용됩니다.

이 문서에서는 등록된 API 간의 종속 항목을 만들고 관리하는 방법을 설명합니다. 종속 항목은 API 간의 관계를 파악하는 데 도움이 됩니다. 종속 항목 소개를 참조하세요.

UI를 사용하면 소비자가 공급업체의 작업에 종속되는 소비자 API와 공급업체 API 간의 관계를 한눈에 확인할 수 있습니다. 그림 1을 참조하세요.

API 허브 종속 항목 UI
그림 1. API 종속 항목 UI에서는 소비자 작업이 공급업체 작업에 종속되는 소비자/공급업체 쌍을 보여줍니다. 쉽게 드릴다운하여 각 종속 항목의 세부정보를 확인할 수 있습니다. 소비자 또는 공급자 작업별로 테이블을 필터링할 수도 있습니다.

종속 항목 만들기

REST API를 사용하여 종속 항목을 만들 수 있습니다.

콘솔

종속 항목을 만들려면 다음 안내를 따르세요.

  1. Google Cloud 콘솔에서 API 허브공급망 페이지로 이동합니다.

    API 허브로 이동
  2. 종속 항목 만들기를 클릭합니다.
  3. 종속 항목에 대한 설명을 추가합니다.
  4. 공급업체 리소스 선택에서 작업을 선택합니다.
  5. 작업을 제공하는 API를 선택합니다.
  6. 작업을 제공하는 API의 API 버전을 선택합니다.
  7. 소비자에게 제공되는 작업을 선택합니다. 예를 들면 GET-/items입니다.
  8. 소비자 리소스 선택에서 작업을 선택합니다.
  9. 공급업체에서 작업을 사용하는 API를 선택합니다.
  10. 작업을 사용하는 API 버전을 선택합니다.
  11. 제공된 API를 사용하는 작업을 선택합니다. 예를 들면 GET-/categories입니다.
  12. 원하는 경우 설정에서 정의된 사용자 정의 속성 값을 제공합니다.
  13. 만들기를 클릭합니다. 새 종속 항목이 종속 항목 목록 페이지에 표시됩니다(그림 1).

REST

종속 항목 만들기 API를 사용하여 새 종속 항목을 만들려면 다음 안내를 따르세요.

curl -X POST 'https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/dependencies?dependency_id=DEPENDENCY_ID' \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H 'Content-Type: application/json' \
  --d '{
      "description": "DESCRIPTION",
      "supplier": {
          // Specify one of the following:
          "operation_resource_name": RESOURCE_NAME
          // OR
          "external_api_resource_name: RESOURCE_NAME"
      },
      "consumer": {
        // Specify one of the following:
        "operation_resource_name": RESOURCE_NAME
        // OR
        "external_api_resource_name: RESOURCE_NAME"
      }
  }'

다음을 바꿉니다.

  • HUB_PROJECT: API 허브 호스트 프로젝트의 이름입니다. 이 호스트 프로젝트는 API 허브가 프로비저닝되었을 때 선택되었습니다.
  • HUB_LOCATION: 호스트 프로젝트의 위치입니다. 이 위치는 API 허브가 프로비저닝되었을 때 선택되었습니다.
  • DEPENDENCY_ID: (선택사항) 종속 항목의 식별자입니다. 제공하지 않으면 시스템에서 생성된 ID가 사용됩니다. 이름은 4~500자(영문 기준)의 문자열이어야 하며 유효한 문자는 /[a-z][A-Z][0-9]-_.입니다.
  • DESCRIPTION: (선택사항) 종속 항목에 대한 간단한 설명입니다.
  • RESOURCE_NAME: (필수) 지정한 속성에 따라 API 허브 또는 외부 API의 작업 리소스 이름입니다.

    작업 리소스 이름 형식: projects/PROJECT/locations/LOCATION/apis/API/versions/VERSION/operations/OPERATION

    작업 리소스 예시: "projects/myproject/locations/us-central1/apis/payments-api/versions/locationv1/operations/getlocation"

    외부 API 리소스 이름 형식: projects/PROJECT/locations/LOCATION/externalApis/EXTERNAL_API

    외부 API 리소스 예시: "projects/myproject/locations/us-central1/externalApis/petstore"

샘플 응답:

{
  "name": "projects/myproject/locations/us-central1/dependencies/user-to-pet",
  "consumer": {
      "displayName": "POST - /v2/user",
      "operationResourceName": "projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/createuser"
  },
  "supplier": {
      "displayName": "POST - /v2/pet",
      "operationResourceName": "projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/addpet"
  },
  "state": "VALIDATED",
  "description": "Dependency from user to pet API",
  "discoveryMode": "MANUAL",
  "createTime": "2024-04-17T19:33:31.664226Z",
  "updateTime": "2024-04-17T19:33:31.664226Z"
 }

REST 예시

curl -X POST 'https://apihub.googleapis.com/v1/projects/myproject/locations/us-central1/dependencies?dependency_id=user-to-pet' \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H 'Content-Type: application/json' \
  --d '{
      "description": "Dependency from user to pet API",
      "consumer": {
          "operation_resource_name": "projects/myproject/locations/us-central1/apis/payments-api/versions/paymentv1/operations/createuser"
      },
      "supplier": {
          "operation_resource_name": "projects/myproject/locations/us-central1/apis/pet-api/versions/petstorev1/operations/addpet"
      }
  }'

종속 항목 나열

이 섹션에서는 종속 항목을 나열하는 방법을 설명합니다. API의 모든 버전과 관련된 모든 종속 항목을 나열하거나 특정 버전과 관련된 모든 종속 항목을 나열할 수 있습니다.

콘솔

종속 항목을 나열하려면 다음 안내를 따르세요.

  1. Google Cloud 콘솔에서 API 허브공급망 페이지로 이동합니다. 알려진 종속 항목 목록이 공급망 페이지에 표시됩니다.

    API 허브로 이동
  2. 필요한 경우 필터 필드에서 공급자 또는 소비자 작업을 지정하여 관련 종속 항목을 반환합니다. 필터 기능을 사용하면 지정된 작업과 연결된 모든 종속 항목을 찾을 수 있습니다.

REST

모든 종속 항목을 나열하려면 종속 항목 나열 API를 사용합니다.

curl "https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/dependencies"
      -H "Authorization: Bearer: $(gcloud auth print-access-token)" -X GET -H "Content-Type: application/json"

다음을 바꿉니다.

  • HUB_PROJECT: API 허브 호스트 프로젝트의 이름입니다. 이 호스트 프로젝트는 API 허브가 프로비저닝되었을 때 선택되었습니다.
  • HUB_LOCATION: 호스트 프로젝트의 위치입니다. 이 위치는 API 허브가 프로비저닝되었을 때 선택되었습니다.

샘플 출력:

{
  "dependencies": [
      {
          "name": "projects/myproject/locations/us-central1/dependencies/user-to-pet",
          "consumer": {
              "displayName": "POST - /v2/user",
              "operationResourceName": "projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/createuser"
          },
          "supplier": {
              "displayName": "POST - /v2/pet",
              "operationResourceName": "projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/addpet"
          }
      }
  ]
 }

종속 항목 세부정보 가져오기

이 섹션에서는 REST API를 사용하여 API 종속 항목에 대한 세부정보를 가져오는 방법을 설명합니다. 소비자 및 공급자의 세부정보를 보고 손상된 종속 항목을 나타낼 수 있는 오류와 같은 종속 항목에 대한 세부정보를 볼 수 있습니다.

콘솔

종속 항목을 가져오려면 다음 안내를 따르세요.

  1. Google Cloud 콘솔에서 API 허브공급망 페이지로 이동합니다.

    API 허브로 이동
  2. 필요한 경우 필터 필드에서 공급자 또는 소비자 작업을 지정하여 관련 종속 항목을 반환합니다. 필터 기능을 사용하면 지정된 작업과 연결된 모든 종속 항목을 찾을 수 있습니다.
  3. 관심 있는 종속 항목을 찾고 세부정보 보기를 클릭합니다.

REST

종속 항목의 세부정보를 보려면 종속 항목 세부정보 가져오기 API를 사용합니다.

curl "https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/dependencies/DEPENDENCY_ID"
  -H "Authorization: Bearer: $(gcloud auth print-access-token)" -X GET -H "Content-Type: application/json"

다음을 바꿉니다.

  • HUB_PROJECT: API 허브 호스트 프로젝트의 이름입니다. 이 호스트 프로젝트는 API 허브가 프로비저닝되었을 때 선택되었습니다.
  • HUB_LOCATION: 호스트 프로젝트의 위치입니다. 이 위치는 API 허브가 프로비저닝되었을 때 선택되었습니다.
  • DEPENDENCY_ID: 종속 항목의 고유 ID입니다.

샘플 응답:

{
  "name": "projects/myproject/locations/us-central1/dependencies/user-to-pet",
  "consumer": {
      "displayName": "POST - /v2/user",
      "operationResourceName": "projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/createuser"
  },
  "supplier": {
      "displayName": "POST - /v2/pet",
      "operationResourceName": "projects/myproject/locations/us-central1/apis/payments-api/versions/version1/operations/addpet"
  },
  "state": "VALIDATED",
  "description": "Dependency from user to pet API",
  "discoveryMode": "MANUAL",
  "createTime": "2024-04-17T19:33:31.215978712Z",
  "updateTime": "2024-04-17T19:33:31.737505297Z"
}

다음은 샘플 응답입니다. 여기서 오류 조건은 공급업체 작업이 삭제되었음을 나타냅니다(손상된 종속 항목).

{
  "name": "projects/common-dev-15/locations/us-central1/dependencies/user-to-pet",
  "consumer": {
      "displayName": "POST - /v2/user",
      "operationResourceName": "projects/common-dev-15/locations/us-central1/apis/payments-api/versions/2ff89c88-e8b6-48c4-a1c2-bdbb2a929bde/operations/createuser"
  },
  "supplier": {
      "displayName": "POST - /v2/pet",
      "operationResourceName": "projects/common-dev-15/locations/us-central1/apis/payments-api/versions/2ff89c88-e8b6-48c4-a1c2-bdbb2a929bde/operations/addpet"
  },
  "state": "VALIDATED",
  "description": "Dependency from user to pet API",
  "discoveryMode": "MANUAL",
  "createTime": "2024-04-17T19:33:31.215978712Z",
  "updateTime": "2024-04-17T19:33:31.737505297Z",
  {
    "error": "SUPPLIER_NOT_FOUND",
    "errorTime": 2024-05-18T20:23:42.465324Z
  }
}

API 종속 항목 삭제

이 섹션에서는 API 종속 항목을 삭제하는 방법을 설명합니다.

콘솔

종속 항목을 삭제하려면 다음 안내를 따릅니다.

  1. Google Cloud 콘솔에서 API 허브공급망 페이지로 이동합니다.

    API 허브로 이동
  2. 필요한 경우 필터 필드에서 공급자 또는 소비자 작업을 지정하여 관련 종속 항목을 반환합니다. 필터 기능을 사용하면 지정된 작업과 연결된 모든 종속 항목을 찾을 수 있습니다.
  3. 관심 있는 종속 항목을 찾고 삭제 아이콘을 클릭하여 종속 항목을 삭제합니다.

REST

API 허브에서 종속 항목을 삭제하려면 종속 항목 삭제 API를 사용합니다.

curl "https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/dependencies/DEPENDENCY_ID"
  -H "Authorization: Bearer: $(gcloud auth print-access-token)" -X DELETE -H "Content-Type: application/json"

다음을 바꿉니다.

  • HUB_PROJECT: API 허브 호스트 프로젝트의 이름입니다. 이 호스트 프로젝트는 API 허브가 프로비저닝되었을 때 선택되었습니다.
  • HUB_LOCATION: 호스트 프로젝트의 위치입니다. 이 위치는 API 허브가 프로비저닝되었을 때 선택되었습니다.
  • DEPENDENCY_ID: 삭제할 종속 항목의 ID입니다.

종속 항목 수정

이 섹션에서는 종속 항목을 수정하는 방법을 설명합니다. 수정할 수 있는 유일한 속성은 종속 항목 설명입니다.

콘솔

API를 수정하려면 다음 안내를 따르세요.

  1. Google Cloud 콘솔에서 API 허브공급망 페이지로 이동합니다.

    API 허브로 이동
  2. 필요한 경우 필터 필드에서 공급자 또는 소비자 작업을 지정하여 관련 종속 항목을 반환합니다. 필터 기능을 사용하면 지정된 작업과 연결된 모든 종속 항목을 찾을 수 있습니다.
  3. 관심 있는 종속 항목을 찾고 세부정보 보기를 클릭합니다.
  4. 종속 항목 페이지에서 설명과 속성을 수정할 수 있습니다. 수정 아이콘을 사용하여 해당 필드 수정을 사용 설정합니다.
  5. 저장을 클릭합니다.

REST

배포를 수정하려면 종속 항목 패치 API를 사용합니다.

curl "https://apihub.googleapis.com/v1/projects/HUB_PROJECT/locations/HUB_LOCATION/dependencies/DEPENDENCY_ID"
    -H "Authorization: Bearer: $(gcloud auth print-access-token)" -X PATCH -H "Content-Type: application/json"
    '{
      'description': DESCRIPTION
    {'

다음을 바꿉니다.

  • HUB_PROJECT: API 허브 호스트 프로젝트의 이름입니다. 이 호스트 프로젝트는 API 허브가 프로비저닝되었을 때 선택되었습니다.
  • HUB_LOCATION: 호스트 프로젝트의 위치입니다. 이 위치는 API 허브가 프로비저닝되었을 때 선택되었습니다.
  • DEPLOYMENT_ID: 수정할 배포의 ID입니다.
  • DESCRIPTION: 수정 가능한 유일한 속성은 설명입니다.