추가 사용 사례

자격요건

GTAF는 사용자가 요금제를 구매할 수 있는지 확인하기 위해 다음 자격요건 요청을 실행할 수 있습니다(MAY).

GET DPA/{userKey}/Eligibility/{planId}?key_type={CPID,MSISDN}

planId는 사용자를 대신하여 요금제를 구매할 때 사용할 수 있는 요금제의 고유 식별자입니다. 데이터 구매를 참고하세요. planId을 지정하지 않으면 DPA는 사용자가 구매할 수 있는 모든 요금제를 반환해야 합니다(MUST).

오류 사례는 오류가 있는 경우 DPA에서 예상하는 응답을 나열합니다. 또한 DPA SHALL은 다음과 같은 오류 사례에서 오류를 반환합니다.

  • DPA는 planId가 잘못되었음을 나타내는 400 BAD REQUEST 오류 코드를 GTAF에 반환합니다.
  • DPA는 planId이 사용자의 데이터 요금제와 호환되지 않음을 나타내는 409 CONFLICT 오류 코드를 반환합니다.

그렇지 않으면 DPA는 200-OK 응답을 반환합니다. 성공한 eligibilityResponse의 형식은 다음과 같습니다.

{
  "eligiblePlans":
  [
   {
    "planId": string,   // Plan identifier. Can be used to
                        // refer to the plan during
                        // offers, etc. (req.)
   }
  ]
}

요청에 planId가 포함된 경우 응답에는 해당 계획만 포함됩니다. 그 외의 경우에는 목록에 사용자가 구매할 수 있는 모든 요금제가 포함됩니다. planId가 비어 있고 DPA가 대상 요금제 목록 반환을 지원하지 않는 경우 400 BAD REQUEST 오류를 반환해야 합니다(MUST).

Android 5G 환경

GTAF를 사용하면 이동통신사가 가입자의 연결 유형에 따라 계량 상태를 공유할 수 있습니다. GTAF에서 정기적으로 정보를 가져오거나 이동통신사에서 내부 트리거를 기반으로 정보를 푸시할 수 있습니다.

API 가져오기

기기에서 다음을 사용하여 GTAF를 통해 계량 정보를 가져올 수 있습니다.

GET DPA/{userKey}/planStatus?key_type={userKey}&client_id=AndroidSystemInfo

DPA (데이터 요금제 에이전트)는 이동통신사 네트워크의 API GW 또는 사용 권한 서버를 나타냅니다.

userKey는 여기에 정의된 초기 인증 단계 중에 설정된 인증 토큰입니다.

client_id는 AndroidSystemInfo입니다.

계량 상태는 ENUM으로 제공됩니다.

DPA는 200 OK 응답을 반환하고 planInfoPerClient를 포함합니다. DPA의 오류 처리는 여기에 정의되어 있습니다.

GTAF는 풀 모델에서 클라이언트 역할을 하며 DPA의 SSL 인증서를 검증합니다. GTAF는 여기에 정의된 OAuth 절차를 사용하여 DPA에 자신을 인증합니다.

Push API

이동통신사는 트리거 이벤트(예: 요금제 변경 등)를 기반으로 다음을 사용하여 측정 정보를 푸시할 수도 있습니다.

POST https://mobiledataplansharing.googleapis.com/v1/operators/12345/clients/AndroidSystemInfo/users/abcdef/planStatus

DPA는 메시지 본문에 planInfoPerClient를 포함해야 합니다. GTAF의 오류 응답은 여기에 정의되어 있습니다.

푸시 모드에서 GTAF는 Google Cloud OAuth2 서버를 사용하여 DPA에서 들어오는 요청을 인증합니다. 수신 요청은 DPA가 나타내는 ASN에 대해 ISP 포털에서 허용 목록에 추가된 서비스 계정으로 인증되어야 합니다. 또한 자세한 내용은 여기에서 통합 가이드를 참고하세요.