가맹점 하나가 가진 프로젝트를 한 번에 나열한다.
리셀러 본인 하위 셀러가 가진 프로젝트(app) 를 나열한다. 가맹점 상세 화면에서 프로젝트 탭을 그릴 때 쓴다.
핵심 요약
provider_id 가 필수다. 본인 하위 셀러가 아니면 PROVIDER_NOT_FOUND 가 떨어진다.
- 목록에는 결제 연동키와 커머스 정보가 없다. 키와
commerce 는 프로젝트 조회 를 쓴다.
count 는 페이지와 무관한 전체 프로젝트 수다.
API 정보
GEThttps://api.bootpay.co.kr/v2/reseller/seller/app?provider_id=...Basic Auth (리셀러 계정 키)
요청 파라미터
| 파라미터 |
타입 |
필수 |
설명 |
provider_id |
String |
필수 |
프로젝트를 조회할 셀러의 provider_id (쿼리) |
page |
Number |
선택 |
페이지 번호 (쿼리). 기본 1 |
limit |
Number |
선택 |
페이지당 건수 (쿼리). 기본 20, 최대 100 |
코드 예제
import fetch from 'node-fetch'
const RESELLER_AUTH = 'Basic ' + Buffer
.from(`${process.env.BOOTPAY_RESELLER_CLIENT_KEY}:${process.env.BOOTPAY_RESELLER_SECRET_KEY}`)
.toString('base64')
const providerId = '65a1c0aa8f1b5b00367a0001'
const res = await fetch(`https://api.bootpay.co.kr/v2/reseller/seller/app?provider_id=${providerId}`, {
method: 'GET',
headers: {
'Authorization': RESELLER_AUTH
}
})
const data = await res.json()
console.log(data.count, data.list)javascript
import base64, os, requests
auth = 'Basic ' + base64.b64encode(
f"{os.environ['BOOTPAY_RESELLER_CLIENT_KEY']}:{os.environ['BOOTPAY_RESELLER_SECRET_KEY']}".encode()
).decode()
provider_id = '65a1c0aa8f1b5b00367a0001'
res = requests.get(
'https://api.bootpay.co.kr/v2/reseller/seller/app',
params={'provider_id': provider_id},
headers={'Authorization': auth}
)
print(res.json())python
RESELLER_AUTH=$(printf '%s' "$BOOTPAY_RESELLER_CLIENT_KEY:$BOOTPAY_RESELLER_SECRET_KEY" | base64)
PROVIDER_ID='65a1c0aa8f1b5b00367a0001'
curl -X GET "https://api.bootpay.co.kr/v2/reseller/seller/app?provider_id=$PROVIDER_ID" \
-H "Authorization: Basic $RESELLER_AUTH"bash
응답
{
"list": [
{
"app_id": "65a1c0ab8f1b5b00367a0002",
"provider_id": "65a1c0aa8f1b5b00367a0001",
"app_name": "한입가게",
"real": { "name": "실물", "value": 1, "desc": "" },
"desc": "",
"unit": "KRW",
"status": 20
},
{
"app_id": "65a1c0ab8f1b5b00367a0010",
"provider_id": "65a1c0aa8f1b5b00367a0001",
"app_name": "한입가게 — 정기구독",
"real": { "name": "비실물", "value": 0, "desc": "" },
"desc": "",
"unit": "KRW",
"status": 20
}
],
"count": 2
}json
응답 파라미터
| 파라미터 |
타입 |
설명 |
| list |
Array |
프로젝트 배열 |
| list[].app_id |
String |
프로젝트 식별자 |
| list[].provider_id |
String |
소속 셀러 |
| list[].app_name |
String |
프로젝트명 |
| list[].real |
Object |
거래 상품 유형. { name, value, desc } 구조이고 name 은 실물 / 비실물 / 실물&비실물 중 하나다 |
| list[].desc |
String |
프로젝트 설명 |
| list[].unit |
String |
결제 통화 |
| list[].status |
Number |
프로젝트 상태. 기본값 20 (심사통과) |
| count |
Number |
전체 프로젝트 수 |
에러 코드
| 코드 |
메시지 |
대처 방법 |
API_ONLY_RESELLER |
리셀러만 이용이 가능한 API 다 |
리셀러 권한 계정 키로 호출한다 |
API_SCOPE_INVALID |
허용되지 않은 API 권한의 키다 |
리셀러 프로젝트의 전체 권한(supervisor) Client Key 로 호출한다 |
PROVIDER_NOT_FOUND |
본인 하위에 해당 셀러가 없다 |
provider_id 가 본인 리셀러 소속인지 확인한다 |
다음 단계