마이의 개발 블로그

[API] Amazon Selling Partner API (SP-API) 파악하기 본문

카테고리 없음

[API] Amazon Selling Partner API (SP-API) 파악하기

개발자마이 2022. 11. 8. 20:06
반응형

배경

업무 관련으로 AMZ SP-API를 파악할 필요가 있어 공식문서를 읽으며 중간중간 필요한 내용들만 간단히 정리해놓고 있다. SP-API를 사용하기 위해서는 AWS 셋업, 앱 생성, 개발자 등록, Authorization, 토큰 발급 및 활용 등 거쳐야할 절차가 많고, 중간중간 신경써야할 정책들이 있어 공식문서를 여러 번 보고 있다.

정리한 내용

마켓플레이스

https://developer-docs.amazon.com/sp-api/docs/marketplace-ids

- 마켓플레이스 ID로 구분함 

- AWS에 따라 호출주소(지역)가 바뀌므로 유의해야함

 

앱 타입

https://developer-docs.amazon.com/sp-api/docs/determine-app-type

- private seller apps : 우리 조직이나 고객만 사용이 가능한 셀러 앱, 셀프 인증으로 사용 가능

- private vendor apps : 우리 조직이나 고객만 사용 가능한 벤더 앱, 셀프 인증으로 사용 가능

- public apps : Selling Partner Appstore에 공개되어 사용가능한 앱들이며 seller나 vendor의 인증을 필요로 함

 

리프레쉬 토큰의 발급

1. private apps (seller, vendor 공통) - 셀프인증

  1) Seller Central 로그인

  2) Partner Network - Develop Apps 진입 후 앱 생성

  3) 생성된 앱의 Action 컬럼 Edit App버튼 우측 화살표 클릭 - Authorize 클릭

  4) 권한위임을 원하는 셀러 우측의 Authorize app 버튼 클릭

  5) 생성된 리프레쉬 토큰 저장 후 액세스 토큰 발급시 활용

 

2. public apps for sellers - OAuth 인증 - 2가지 방법

  1) 유저가 앱스토어상의 앱 세부정보 페이지 진입 후 authorize 버튼 클릭

  2) 웹사이트 내에 생성된 버튼을 유저가 클릭 - 출력되는 로그인 화면에서 ID/PW 입력 후 로그인 (사이트에 권한위임)

 

3. public apps for vendors - 해당 사항 없으므로 일단 생략

 

셀프 인증

- private seller 앱 타입의 경우 셀프인증처리 후 리프레쉬 토큰 발급이 가능함

- 셀프인증처리 횟수는 앱당 최대 10회

- 인증을 제거하고싶을 경우 support team 문의해야함

(링크 하단 참고 :  https://developer-docs.amazon.com/sp-api/docs/application-authorization-limits)

 

액세스 토큰의 발급

- 요청 주소 : https://api.amazon.com/auth/o2/token (POST)

- 포스트맨에서 요청 시 x-www-form-urlencoded 선택

- request body (bulk edit 버전임) :

grant_type:refresh_token

refresh_token:{발급받은 리프레쉬토큰}

client_id:{AWS 클라이언트 아이디}

client_secret:{AWS 시크릿 키}

 

Access Token 발급받은 후 SP-API 호출하기 절차 (포스트맨 사용 시)

1. Authorization : AWS Signature 선택

2. access key, secret key, aws region, service name (execute-api) 입력

- access key, secret key는 앱 개발자의 aws 계정에서 가져와야함

3. 헤더 x-amz-access-token 추가 후 값으로 발급받은 Access Token 기입

4. 관련 내용 (하단 동영상 참조)

https://developer-docs.amazon.com/sp-api/docs/using-postman-for-selling-partner-api-models

 

토큰의 활용

- 일반적인 요청시에는 발급받은 access_token을 사용하지만 PII에 접근하는 API들의 경우 restricted data token (RDT)을 사용해야함

- RDT 사용 API 목록

https://developer-docs.amazon.com/sp-api/docs/tokens-api-use-case-guide#restricted-operations

반응형
Comments