한 번에 여러 요청 보내기

일괄 요청을 사용하여 판매자 API를 사용하여 단일 API 호출로 여러 요청을 보낼 수 있습니다.

일괄 요청은 여러 API 호출이 포함된 단일 표준 HTTP 요청입니다. multipart/mixed 콘텐츠 유형을 사용합니다. 기본 HTTP 요청 내에서 각각 부분에 중첩된 HTTP 요청이 포함됩니다.

API에 대해 지정된 batchPath로 일괄 요청을 보낼 수 있습니다. 이 Merchant API 베타의 batchPathbatch/{sub-api}/v1beta입니다 . 다음에서 확인할 수 있습니다. 탐색 시 다른 API의 batchPath 문서를 참조하세요.

다음은 요청을 일괄 처리하는 것이 바람직한 경우의 몇 가지 예입니다.

  • 이제 막 API를 사용하기 시작했고 업로드할 데이터가 많습니다.
  • 애플리케이션이 오프라인일 때 사용자가 데이터를 변경했고 서버와 동기화해야 합니다.
를 통해 개인정보처리방침을 정의할 수 있습니다.

HTTP 일괄 처리에 대한 질문이 있거나 클라이언트와 함께 일괄 요청을 전송하고 라이브러리, submit 의견을 참고하세요.

일괄 요청 쓰기

다음은 샘플 판매자 API 일괄 요청입니다. 이 요청은 get 요청 및 을 사용하여 제품의 지역 인벤토리를 검색하고, 동일한 제품의 오프라인 판매점 인벤토리를 업데이트해야 합니다

예시의 형식을 정확하게 따라야 합니다.

  1. https://merchantapi.googleapis.com/batch/{sub-api}/v1beta를 기본으로 사용 URL입니다.
  2. 중첩된 각 요청을 구분할 경계를 지정합니다. 예를 들면 다음과 같습니다.

    -H 'Content-Type: multipart/mixed,boundary=batch_inventory' \

  3. 중첩된 각 요청을 경계로 구분합니다. 예를 들면 다음과 같습니다. --batch_inventory

  4. 각 중첩된 각 시작 부분에 Content-Type: application/http 포함 합니다.

  5. (선택사항) Content-ID를 사용하여 각 중첩된 요청에 고유 ID의 라벨을 지정합니다. 예를 들면 다음과 같습니다.

    Content-ID: <get:online:en:US:123456>.

  6. 중첩된 각 항목의 헤더, 경로, 본문 사이에 빈 줄을 추가합니다. 합니다. 중첩된 요청에 본문이 없으면 빈 줄을 남겨둡니다. 다음 경계 전에 배치해야 합니다.

  7. 각 중첩된 각 요청에 기본 URL을 포함하지 않습니다.

  8. 최종 경계로 기본 요청을 종료합니다. 예를 들면 다음과 같습니다. --batch_inventory–

를 통해 개인정보처리방침을 정의할 수 있습니다.
curl https://merchantapi.googleapis.com/batch/inventories/v1beta \
-H 'Authorization: Bearer <TOKEN>' \
-H 'Content-Type: multipart/mixed,boundary=batch_inventory' \
--data '
--batch_inventory
Content-Type: application/http
Content-ID: <get:online:en:US:123456>

GET /inventories/v1beta/accounts/123/products/online:en:US:123456/regionalInventories

--batch_inventory
Content-Type: application/http
Content-ID: <post:online:en:US:123456>

POST /inventories/v1beta/accounts/123/products/online:en:US:123456/regionalInventories:insert

{
   "region: "123456",
    "price": {
        "amountMicros": "100000000",
        "currencyCode": "USD"
    }
}
--batch_inventory--
'

특정 순서로 호출을 실행해야 하는 경우 별도로 전송하고 다음 요청을 보내기 전에 첫 번째 요청에 대한 응답을 기다립니다.

일괄 응답 읽기

다음은 HTTP 일괄 응답의 예입니다. 응답의 순서는 요청의 순서와 일치하지 않습니다 Content-ID를 사용하여 중첩된 항목을 식별합니다. 각 중첩된 응답이 속하는 요청 중 하나에 응답해야 합니다. 응답에서 각 Content-ID는 다음과 같습니다. response-가 접두사로 지정됩니다.

--batch_YCE-jYH0pmDrBIHeHhltcpXIMpk0VTzQ
Content-Type: application/http
Content-ID: <response-get:online:en:US:123456>
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Vary: Origin
Vary: X-Origin
Vary: Referer
{}
--batch_YCE-jYH0pmDrBIHeHhltcpXIMpk0VTzQ
Content-Type: application/http
Content-ID: <response-post:online:en:US:123456>
HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8
Vary: Origin
Vary: X-Origin
Vary: Referer
{
  "name": "accounts/123/products/online:en:US:123456/regionalInventories/123456",
  "region": "123456",
  "price": {
    "amountMicros": "100000000",
    "currencyCode": "USD"
  }
}
--batch_YCE-jYH0pmDrBIHeHhltcpXIMpk0VTzQ--
'