API 요청 인증 방법
이 가이드를 사용하는 경우
Elimapi API를 호출해야 할 때 사용합니다. 먼저 다음 두 가지 인증 방식 중 하나를 선택합니다:
| 인증 방식 | 사용 시기 |
|---|---|
| 액세스 토큰 (JWT) | 사용자 인터페이스가 있는 앱으로, 주기적인 로그인이 필요함 |
| API 키 | 자동화된 시스템 통합(서버 간)으로, 로그인 세션 관리가 필요 없음 |
전체 참조(endpoints, 오류 코드, 할당량): 인증
사전 조건
- 활성화된 Elimapi 계정 — 계정 등록 참조
- Base URL:
https://openapi.elim.asia
방법 1: 액세스 토큰(JWT)으로 인증
1단계 — 로그인하여 토큰 받기
로그인 엔드포인트에 POST 요청을 보냅니다:
POST /v1/auth/login
Content-Type: application/json
Accept: application/json
{
"email": "[email protected]",
"password": "password"
}
응답에서 access_token과 refresh_token을 반환합니다.
2단계 — 모든 요청에 토큰 첨부
Authorization: Bearer {access_token}
Accept: application/json
Content-Type: application/json
중요 참고사항:
- 토큰은 90일 동안 유효합니다.
- 성능 최적화를 위해 토큰을 캐시 시스템(Redis/Memcached)에 저장하는 것이 좋습니다.
- 토큰을 제3자와 공유하지 마십시오.
방법 2: API 키로 인증
1단계 — 대시보드에서 API 키 생성
- 대시보드에서 알아보기 쉬운 이름(예:
Production Server)을 설정하고 Generate를 클릭합니다. - 시스템은 전체 키를 단 한 번만 표시합니다 — 즉시 저장하세요.
- 키 목록 관리: 생성 날짜와 마지막 사용 시간을 확인하거나, 키가 유출된 경우 즉시 Revoke하세요.
[!IMPORTANT] 보안: API 키는 귀하의 계정과 동일한 액세스 권한을 가집니다. 공개 플랫폼(GitHub, 포럼)이나 신뢰할 수 없는 제3자에게 절대 공유하지 마십시오.
2단계 — x-api-key 헤더에 키 전송
각 요청의 헤더에 x-api-key 필드를 추가합니다:
curl -X POST "https://openapi.elim.asia/v1/products/search" \
-H "x-api-key: your_api_key_here" \
-H "Content-Type: application/json" \
-d '{"q": "keyword", "platform": "taobao"}'
결과 확인
테스트 검색 요청을 보내고 200 응답과 함께 제품 데이터를 받으면 인증이 성공한 것입니다:
curl -X POST "https://openapi.elim.asia/v1/products/search" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"q": "áo thun", "platform": "taobao"}'
일반적인 오류 처리
| 오류 코드 | 원인 | 해결 방법 |
|---|---|---|
| 401 | 토큰/API 키가 없거나, 잘못되었거나, 만료됨 | Authorization 또는 x-api-key 헤더 다시 확인 |
| 403 | 계정이 잠겨 있거나 권한이 부족함 | 대시보드에서 계정 상태 확인 |
| 429 | 요청 속도 제한(Rate Limit) 초과 | 호출 빈도 줄이기 또는 요금제 업그레이드 |
코드 예제(API 키 사용)
JavaScript (Axios)
const axios = require('axios')
const client = axios.create({
baseURL: 'https://openapi.elim.asia/v1',
headers: {
'x-api-key': 'YOUR_API_KEY_HERE',
'Content-Type': 'application/json',
},
})
async function searchProduct(keyword) {
try {
const response = await client.post('/products/search', { q: keyword, platform: 'taobao' })
console.log(response.data)
} catch (error) {
console.error('Error:', error.response.status)
}
}
Python (Requests)
import requests
API_URL = "https://openapi.elim.asia/v1/products/search"
HEADERS = {
"x-api-key": "YOUR_API_KEY_HERE",
"Content-Type": "application/json"
}
def search_product(keyword):
response = requests.post(API_URL, headers=HEADERS, json={"q": keyword, "platform": "taobao"})
if response.status_code == 200:
return response.json()
return None
관련 링크
- 참조: 인증 — 전체 endpoints, 할당량, 오류 코드 표
- 다음: 제품 검색 가이드 · 주문 생성 및 관리
- 구성: 구성