화이트리스트
개발 문서
화이트리스트
화이트리스트 연동하기
화이트리스트가 무엇인가요?
화이트리스트는 지정한 유저만 구매할 수 있도록 하는 기능입니다.
활성화 할 경우 상품의 화이트리스트에 포함된 유저만 구매가 가능합니다.
웹 대시보드에서도 화이트리스트를 수동으로 편집할 수 있습니다.
화이트리스트 기능이 할성화되어야 합니다
상품의 개발자 설정에서 화이트리스트 기능이 활성되어야 합니다.
기능이 비활성화된 경우, 모든 요청에서 오류를 반환합니다.
시간 제한을 확인하세요
10초에 최대 20번의 요청으로 제한됩니다.
멤버십 전용
멤버십 구독자만 이용할 수 있는 API 입니다.
멤버십 구독자가 아닌 경우 오류를 반환하니 참고하시기 바랍니다.
1. 화이트리스트에 유저 추가하기
화이트리스트에 유저를 추가하려면 아래와 같이 요청하세요.
유저 아이디, 디스코드 사용자명(TEST#0000 또는 TEST 형태) 중 선택해,
Body에 넣어 특정 유저를 화이트리스트에 추가할 수 있습니다.
상품 아이디가 포함된 링크에 POST 메소드로 요청해주세요.
Basic 인증 방식을 이용해 인증합니다.
Basic 인증 방식
Basic 인증 방식은 HTTP의 기본 인증 방식 중 하나로,
클라이언트에서 base64로 인코딩된 사용자명/비밀번호 쌍을 자격 증명(credentials) 값으로 사용합니다.
사용자명과 비밀번호는 콜론으로 구분해서 {USERNAME}:{PASSWORD}로 넣어줍니다.
토핑은 사용자명에 시크릿 키를 넣어 사용하고, 비밀번호는 사용하지 않습니다.
따라서 아래와 같이 발급받은 시크릿 키에 콜론을 합친 {SECRET_KEY}:을 base64로 인코딩한 값을 넣어주면 됩니다.
크리에이터 공통 화이트리스트
크리에이터 공통 화이트리스트는 크리에이터의 상품 전체에 적용됩니다.
유저가 크리에이터 공통 화이트리스트 혹은 해당 상품의 화이트리스트 중 하나라도 포함된 경우 구매 및 다운로드가 가능합니다.
크리에이터 공통 화이트리스트는 API URL을 다음과 같이 변경해야 합니다.
https://topping.place/api/public/whitelist/user/{USER_ID}
요청
cURL
curl --request POST \
--url https://topping.place/api/public/whitelist/{PRODUCT_ID} \
--header 'Authorization: Basic base64({SECRET_KEY}:)' \
--header 'Content-Type: application/json' \
--data '{"userId":"{USER_ID}"}'
파라미터
id - string
고유한 유저 아이디로 유저를 특정할 수 있습니다.(선택)
discord - string
고유한 디스코드 사용자명(TEST#0000 또는 TEST 형태)로 유저를 특정할 수 있습니다.(선택)
선택형 파라미터 중 한 가지는 필수입니다
id와 discord 파라미터 중 한가지는 반드시 요청에 포함되어야 합니다.
또, id와 discord 파라미터 모두를 요청에 포함시켜선 안됩니다.
응답
JSON
{
"success" : true,
"id" : 1
}
요청 허용 유도하기
응답에 포함되는 id 값은 화이트리스트 요청의 고유 숫자 id입니다.
이를 이용하여 유저를 요청 허용 페이지로 이동시켜 허용을 유도할 수 있습니다.
상품 화이트리스트의 경우: https://topping.place/oauth/whitelist/{WHITELIST_ID}?product={PRODUCT_ID} 유저 공통 화이트리스트의 경우: https://topping.place/oauth/whitelist/{WHITELIST_ID}?user={USER_ID}
2. 화이트리스트에서 유저 삭제하기
화이트리스트에서 유저를 삭제하려면 아래와 같이 요청하세요.
유저 아이디, 디스코드 사용자명(TEST#0000 또는 TEST 형태) 중 선택해,
Body에 넣어 특정 유저를 화이트리스트에서 삭제할 수 있습니다.
상품 아이디가 포함된 링크에 DELETE 메소드로 요청해주세요.
Basic 인증 방식을 이용해 인증합니다.
Basic 인증 방식
Basic 인증 방식은 HTTP의 기본 인증 방식 중 하나로,
클라이언트에서 base64로 인코딩된 사용자명/비밀번호 쌍을 자격 증명(credentials) 값으로 사용합니다.
사용자명과 비밀번호는 콜론으로 구분해서 {USERNAME}:{PASSWORD}로 넣어줍니다.
토핑은 사용자명에 시크릿 키를 넣어 사용하고, 비밀번호는 사용하지 않습니다.
따라서 아래와 같이 발급받은 시크릿 키에 콜론을 합친 {SECRET_KEY}:을 base64로 인코딩한 값을 넣어주면 됩니다.
아래와 같이 요청하여 최대 30명의 유저를 한번에 삭제할 수 있습니다.
배열에 유저 객체를 넣어 요청해주세요.
요청
cURL
curl --request DELETE \
--url https://topping.place/api/public/whitelist/{PRODUCT_ID} \
--header 'Authorization: Basic base64({SECRET_KEY}:)' \
--header 'Content-Type: application/json' \
--data '{"users":[{"userId":"{USER_ID_1}"}, {"userId":"{USER_ID_2}"}, {"userId":"{USER_ID_3}"}]}'
파라미터
id - string
고유한 유저 아이디로 유저를 특정할 수 있습니다.(선택)
discord - string
고유한 디스코드 사용자명(TEST#0000 또는 TEST 형태)로 유저를 특정할 수 있습니다.(선택)
선택형 파라미터 중 한 가지는 필수입니다
id와 discord 파라미터 중 한가지는 반드시 요청에 포함되어야 합니다.
또, id와 discord 파라미터 모두를 요청에 포함시켜선 안됩니다.
응답
JSON
{
"success" : true
}
3. 화이트리스트 불러오기
화이트리스트 목록을 불러오려면 아래와 같이 요청하세요.
상품 아이디가 포함된 링크에 GET 메소드로 요청해주세요.
Basic 인증 방식을 이용해 인증합니다.
Basic 인증 방식
Basic 인증 방식은 HTTP의 기본 인증 방식 중 하나로,
클라이언트에서 base64로 인코딩된 사용자명/비밀번호 쌍을 자격 증명(credentials) 값으로 사용합니다.
사용자명과 비밀번호는 콜론으로 구분해서 {USERNAME}:{PASSWORD}로 넣어줍니다.
토핑은 사용자명에 시크릿 키를 넣어 사용하고, 비밀번호는 사용하지 않습니다.
따라서 아래와 같이 발급받은 시크릿 키에 콜론을 합친 {SECRET_KEY}:을 base64로 인코딩한 값을 넣어주면 됩니다.
요청
cURL
curl --request GET \
--url https://topping.place/api/public/whitelist/{PRODUCT_ID} \
--header 'Authorization: Basic base64({SECRET_KEY}:)' \
다음과 같은 응답을 확인하실 수 있습니다.
응답
JSON
{
"success" : true,
"users" : [
{
"user" : {
"userId" : "TEST1",
"discord" : null
}
},
{
"user" : {
"userId" : "TEST2",
"discord" : null
}
},
{
"user" : {
"userId" : "TEST3",
"discord" : "TEST3#1234"
}
}
]
}
더 궁금한 내용이 있나요?
디스코드 채팅
토핑은 통신판매중개자이며, 통신판매의 당사자가 아닙니다. 상품, 상품정보, 거래에 관한 의무와 책임은 판매회원에게 있습니다. 따라서, 등록된 상품 및 거래에 대하여 어떠한 책임도 지지 않습니다.
마인크래프트는 Mojang AB의 상표이며, 이 사이트는 Mojang과 관련이 없습니다.
ⓒ 2023 - 2025. JiHwan Choi. all rights reserved.