인증

JsonPipe는 API 접근을 위해 세 가지 인증 방법을 지원합니다.

인증 방법

방법헤더용도
JWT 토큰Authorization: Bearer <token>사용자 계정, 결제, 사용량 추적
API 키X-API-Key: <key>서버 간 통합
OAuth2브라우저 리다이렉트Google 또는 GitHub 로그인

JWT 인증 (권장)

JWT 토큰은 사용자 계정의 기본 인증 방법입니다.

1. 계정 등록

curl -X POST https://api.jsonpipe.com/api/auth/register \
  -H "Content-Type: application/json" \
  -d '{
    "email": "user@example.com",
    "password": "securepassword123"
  }'

2. 로그인

curl -X POST https://api.jsonpipe.com/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{
    "email": "user@example.com",
    "password": "securepassword123"
  }'

3. 토큰 사용

모든 인증된 요청에 토큰을 포함:

curl -X POST https://api.jsonpipe.com/api/v1/generate \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..." \
  -d '{"request": "Gmail to Slack 알림"}'

토큰 만료

  • 토큰은 7일 후 만료
  • 만료 후 다시 로그인하여 새 토큰 발급
  • 토큰을 안전하게 저장 (클라이언트 코드나 git에 절대 포함하지 않기)

API 키 인증

API 키는 서버 간 통합용입니다.

curl -X POST https://api.jsonpipe.com/api/v1/generate \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your_api_key_here" \
  -d '{"request": "RSS to Telegram 알림"}'

API 키는 Starter 이상 플랜에서 사용할 수 있습니다. 대시보드에서 키를 관리하세요.


OAuth2 인증

Google 또는 GitHub 계정으로 로그인할 수 있습니다. 다음 URL로 이동하여 OAuth 플로우를 시작합니다:

GET /api/auth/oauth/google
GET /api/auth/oauth/github

사용자는 제공자의 동의 화면으로 리다이렉트됩니다. 승인 후 JWT 토큰과 함께 리다이렉트됩니다.

연결된 계정 관리

GET /api/auth/oauth/accounts        # 연결된 OAuth 계정 목록
DELETE /api/auth/oauth/:provider     # 제공자 연결 해제

엔드포인트 인증 요구사항

엔드포인트JWTAPI 키공개
GET /health--
GET /api/billing/plans--
POST /api/auth/register--
POST /api/auth/login--
GET /api/auth/oauth/:provider--
GET /api/usage--
POST /api/billing/checkout--
POST /api/v1/generate-
POST /api/v1/deploy-
GET /api/v1/dashboard/*--
POST /api/v1/api-keys--
GET /api/v1/api-keys--
DELETE /api/v1/api-keys/:id--

보안 모범 사례

  1. 클라이언트 코드에 토큰 노출 금지 — 서버 측 API 호출 사용
  2. 토큰 안전하게 저장 — HTTP-only 쿠키 또는 암호화된 저장소 사용
  3. HTTPS만 사용 — 모든 API 호출은 HTTPS 사용
  4. API 키 교체 — 대시보드에서 정기적으로 키 재생성