본문으로 건너뛰기
Unlock your potential with 20% off all Premium Courses. Claim offer
REST API

API 문서 B2B 통합

REST API로 Talktiko을 시스템에 통합하세요. 콘텐츠 관리, 진도 추적, 웹훅 수신, LMS 연결, 기관 계정 프로비저닝 — 모두 프로그래밍 방식으로 가능합니다.

빠른 시작

1

API 토큰 생성

관리 대시보드에서 설정 → 통합 → API 토큰으로 이동하세요. 통합에 필요한 권한을 가진 이름이 지정된 토큰을 생성하세요.

# 토큰은 생성 시 한 번만 표시됩니다 — 복사하여 안전하게 보관하세요
curl -X POST https://api.talktiko.com/api/auth/sign-in \
-H "Content-Type: application/json" \
-d '{"email":"…","password":"…"}'
2

요청 인증

Authorization 헤더에 Bearer 토큰으로 토큰을 포함하세요.

curl -H "Authorization: Bearer YOUR_TOKEN" \
-H "Accept: application/json" \
https://api.talktiko.com/api/courses
3

응답 처리

모든 엔드포인트는 JSON을 반환합니다. 페이지네이션된 리소스에는 data, links, meta 키가 포함됩니다.

{
"data": [...],
"links": { "next": "...?page=2" },
"meta": { "total": 42, "per_page": 15 }
}

엔드포인트 레퍼런스

인증

Laravel Sanctum을 통해 스코프 지정된 권한을 가진 API 토큰을 관리합니다.

POST
/api/auth/sign-in

Authenticate and receive a bearer token

GET
/api/auth/me

Get the authenticated user profile

GET
/api/integrations/tokens

List all API tokens

POST
/api/integrations/tokens

Create a scoped API token with named abilities

DELETE
/api/integrations/tokens/{token}

Revoke an API token

코스 및 콘텐츠

코스, 레슨, 트레이닝, 트레이닝 아이템을 조회하고 관리합니다.

GET
/api/public/courses

List all published courses (no auth required)

GET
/api/public/courses/{slug}

Get course details by slug (no auth required)

GET
/api/courses

List courses with filtering and pagination

GET
/api/courses/{id}

Get full course details

GET
/api/lessons

List lessons with optional course filter

GET
/api/trainings

List training blocks

GET
/api/trainingItems

List training items with type filtering

학습자 진도

학습자 활동, 완료 상태, CEFR 진도를 추적합니다.

GET
/api/stats

Platform-wide statistics

GET
/api/courses/{course}/lesson-progress

Per-lesson progress for a course

GET
/api/progress-history

Historical progress data

GET
/api/cefr/report

CEFR skill-level report for authenticated user

GET
/api/learning-insights

Personalized learning analytics

GET
/api/gamification/stats

Streaks, XP, and achievement data

GET
/api/gamification/leaderboard

Platform leaderboard

웹훅

HMAC-SHA256 서명 페이로드로 실시간 이벤트 알림을 수신합니다.

GET
/api/integrations/webhooks

List configured webhooks

POST
/api/integrations/webhooks

Create a webhook with event subscriptions

PUT
/api/integrations/webhooks/{id}

Update webhook URL or events

DELETE
/api/integrations/webhooks/{id}

Delete a webhook

POST
/api/integrations/webhooks/{id}/test

Send a test ping

GET
/api/integrations/webhooks/{id}/deliveries

View delivery history and status

데이터 내보내기

CSV 내보내기를 비동기적으로 생성하고 다운로드합니다.

GET
/api/integrations/exports

List export jobs and their status

POST
/api/integrations/exports

Request a new data export (learner progress, completions, activity)

GET
/api/integrations/exports/{id}

Check export status

GET
/api/integrations/exports/{id}/download

Download completed CSV export

LTI 1.3 (LMS 통합)

Canvas, Blackboard, Moodle에서 싱글 사인온으로 코스를 실행합니다.

GET
/api/integrations/lti-consumers

List LTI consumer registrations

POST
/api/integrations/lti-consumers

Register an LTI consumer

GET
/api/lti/login

OIDC login initiation endpoint

POST
/api/lti/callback

LTI launch callback

POST
/api/lti/grade-passback/{launch}

Push grade back to LMS

xAPI 포워딩

학습 활동을 xAPI 명세서로 Learning Record Store에 전달합니다.

GET
/api/integrations/xapi-endpoints

List xAPI endpoint configurations

POST
/api/integrations/xapi-endpoints

Register an xAPI LRS endpoint

PUT
/api/integrations/xapi-endpoints/{id}

Update endpoint credentials

DELETE
/api/integrations/xapi-endpoints/{id}

Remove an xAPI endpoint

기관 (B2B)

기관 계정, 멤버, 청구, SSO, 분석을 관리합니다.

GET
/api/institutions

List institutions

POST
/api/institutions

Create an institution

GET
/api/institutions/{id}/members

List institution members

POST
/api/institutions/{id}/members/bulk

Bulk provision members via CSV

GET
/api/institutions/{id}/analytics

White-label analytics dashboard data

GET
/api/institutions/{id}/sso

SSO configuration (SAML/OIDC)

PUT
/api/institutions/{id}/sso

Update SSO settings

GET
/api/institutions/{id}/compliance

Compliance documentation status

Billing & Subscriptions

Manage checkout sessions, subscriptions, and billing portal.

GET
/api/subscription-plans

List available subscription plans

POST
/api/billing/checkout-session

Create a Stripe checkout session

POST
/api/billing/portal-session

Create a billing portal session

POST
/api/billing/apply-promo

Validate and apply a promo code

GET
/api/trial/status

Check free trial status

Rate Limiting

API requests are rate-limited per token to ensure fair usage and platform stability.

Exceeded requests return HTTP 429 with a Retry-After header.

Free
100
requests / min
Pro
1,000
requests / min
Enterprise
Custom
requests / min

웹훅 보안

모든 웹훅 배달에는 웹훅 시크릿으로 서명된 요청 본문의 HMAC-SHA256 해시를 포함하는 X-Signature-256 헤더가 포함됩니다.

# 웹훅 핸들러에서 검증하세요
$signature = hash_hmac('sha256', $requestBody, $webhookSecret);
$isValid = hash_equals($signature, $headerSignature);

페이로드는 실패 시 지수 백오프로 최대 3회 재시도됩니다

배달 로그는 API 및 관리 대시보드에서 이용 가능합니다

테스트 핑으로 이벤트 구독 전에 엔드포인트 연결을 확인합니다

통합할 준비가 되셨습니까?

계정을 만들고 API 토큰을 생성하여 몇 분 안에 통합 구축을 시작하세요. Enterprise 플랜에는 전담 통합 지원이 포함됩니다.