Bắt đầu

Bắt đầu nhanh

Từ con số không đến cuộc gọi API đầu tiên trong vòng dưới hai phút. Đăng ký, lấy access token, và kéo danh sách ứng viên đã có trong tenant của bạn.

1. Tạo tài khoản Tick Up

Nếu bạn chưa có tài khoản, hãy đăng ký tại tickup.vn. Tài khoản mới sẽ tạo một tenant mới với bạn làm admin. Mọi thứ trong API đều được giới hạn theo tenant của bạn, nên token bạn nhận được sẽ tự động cách ly khỏi mọi khách hàng Tick Up khác.

Đã có tài khoản? Đăng nhập tại tickup.vn/auth/login.

2. Lấy access token

Tick Up dùng JSON Web Token (JWT). Bạn đổi email + mật khẩu (hoặc Google OAuth ID token) lấy access token ngắn hạn và refresh token dài hạn. Access token được gắn vào header Authorization trong mọi request sau đó.

curl -X POST https://tickup-api.onrender.com/api/v1/auth/login \
  -H "Content-Type: application/json" \
  -d '{
    "email": "you@yourcompany.com",
    "password": "your-password"
  }'

Bạn sẽ nhận được phản hồi tương tự như:

json
{
  "access_token": "eyJhbGciOiJIUzI1NiIs...",
  "refresh_token": "eyJhbGciOiJIUzI1NiIs...",
  "token_type": "bearer"
}

3. Thực hiện cuộc gọi có xác thực đầu tiên

Export token vào shell của bạn, rồi gọi API lấy danh sách ứng viên trong tenant. Bạn sẽ thấy bất kỳ ứng viên nào đang tồn tại — kể cả danh sách rỗng cũng là một cuộc gọi đầu tiên thành công.

export TICKUP_TOKEN="eyJhbGciOiJIUzI1NiIs..."

curl https://tickup-api.onrender.com/api/v1/candidates \
  -H "Authorization: Bearer $TICKUP_TOKEN"

4. Xem cấu trúc phản hồi

Các endpoint dạng list trả về phong bì phân trang. Mảng items chứa các bản ghi của trang hiện tại, và total cho bạn biết tổng số bản ghi. Đọc hướng dẫn phân trang để biết shape đầy đủ và ngữ nghĩa con trỏ (cursor).

json
{
  "total": 42,
  "page": 1,
  "page_size": 10,
  "items": [
    {
      "id": "c2a5e7b8-...-3f9a",
      "code": "CAN-2026-0001",
      "full_name": "Nguyen Minh Tu",
      "email": "tu.nguyen@example.com",
      "phone": "+84912345678",
      "current_position": "Senior Backend Engineer",
      "source": "manual",
      "is_blacklisted": false,
      "created_at": "2026-05-12T08:23:11.043Z"
    }
  ]
}

5. Bước tiếp theo nên xây gì

Từ đây, hướng đi tùy thuộc vào thứ bạn đang xây dựng:

  • Nhập CV từ nơi khác — đẩy chúng qua POST /candidates (hoặc upload file gốc để Tick Up tự phân tích).
  • Hiển thị vị trí đang mở trên website marketing — lấy từ GET /public/jobs/{tenant_code} (không cần xác thực; mã tenant nằm trong cài đặt tenant).
  • Phản ứng với sự kiện vòng đời ứng viên — đăng ký webhook cho thay đổi vòng, phản hồi email, hoặc xác nhận phỏng vấn.
  • Điều khiển mọi tính năng Tick Up bằng lập trìnhtài liệu API đầy đủ được render trực tiếp từ OpenAPI spec của chúng tôi.