Authentication
Cohost API hỗ trợ hai phương thức xác thực tùy theo loại API.
Scope: Tài liệu này thuộc nhóm Integration (Internal API).
Dùng cho FE/dịch vụ nội bộ Cohost (JWT + X-Team-ID) và mô tả thêm cơ chế API Key cho External API.
Nếu bạn là đối tác tích hợp, xem thêm: External API Guide.
Internal API — JWT (Auth0)
Dùng cho ứng dụng nội bộ (web app, mobile app).
Flow
Client → Auth0 → JWT Token → Cohost API
Header
Authorization: Bearer <jwt_token>
X-Team-ID: <team_id>
Lấy token (FE)
FE (web/mobile) thường lấy JWT token thông qua Auth0 SDK (Authorization Code Flow + PKCE). Sau đó gắn token vào header Authorization: Bearer ... khi gọi Internal API.
X-Team-ID Header
Hầu hết các endpoint yêu cầu header X-Team-ID để xác định team context.
Xem thêm: X-Team-ID Guide.
External API — API Key
Dùng cho đối tác OTA và bên thứ ba.
Header
X-API-Key: <your_api_key>
Scopes
| Scope | Mô tả |
|---|---|
listings:read | Đọc thông tin listing |
bookings:read | Đọc thông tin booking |
bookings:create | Tạo booking mới |
Ví dụ
curl https://api.cohost.vn/api/v1/external/listings \
-H "X-API-Key: ck_live_xxxxxxxxxxxx"
Lỗi xác thực
| HTTP Status | Mô tả |
|---|---|
401 Unauthorized | Token không hợp lệ hoặc hết hạn |
403 Forbidden | Không đủ quyền truy cập |