Quản lý API KeyHướng dẫn tạo APY KEY

Hướng dẫn tạo APY KEY

Tạ Quốc Thắng·4/17/2026

API Key cho phép ứng dụng bên ngoài xác thực và gọi các API của Alohub. Mỗi API Key được gắn với một tài khoản tenant và có thể giới hạn phạm vi truy cập (scopes) theo nhu cầu.

Lưu ý: API Key chỉ hiển thị một lần duy nhất sau khi tạo. Hãy sao chép và lưu trữ ở nơi an toàn ngay lập tức. Nếu mất key, bạn cần tạo lại (regenerate) key mới.

Hướng dẫn tạo API Key trên giao diện

Bước 1: Truy cập trang API Keys

Từ thanh menu bên trái, chọn Tích hợp (Integration) → API Keys. Trang quản lý API Keys sẽ hiển thị danh sách các key đã tạo.

Bước 2: Mở form tạo API Key

Nhấn nút Tạo API Key mới ở góc trên bên phải. Một dialog sẽ mở ra với các trường thông tin cần điền.

Bước 3: Điền thông tin

Trường

Bắt buộc

Mô tả

Tên API Key

Đặt tên để nhận biết mục đích sử dụng. Ví dụ: "CRM Integration", "HubSpot Sync"

Phạm vi truy cập (Scopes)

Chọn ít nhất 1 phạm vi. Tick các checkbox tương ứng với quyền cần cấp (xem bảng Scopes bên dưới)

Thời hạn

Không

Chọn thời hạn hiệu lực: Không giới hạn, 30 ngày, 90 ngày, hoặc 1 năm

Bước 4: Xác nhận tạo

Nhấn nút Tạo API Key để hoàn tất. Hệ thống sẽ hiển thị dialog chứa giá trị API Key vừa tạo.

Bước 5: Sao chép và lưu trữ API Key

Dialog hiện ra sẽ chứa giá trị API Key đầy đủ. Nhấn nút Copy để sao chép key vào clipboard, sau đó lưu vào nơi an toàn (biến môi trường, vault, password manager).

Cảnh báo: Key này sẽ không hiển thị lại sau khi bạn đóng dialog. Nếu chưa copy mà đã đóng, bạn sẽ cần tạo lại (regenerate) key mới.

Sau khi đã lưu key, nhấn Đã lưu, đóng để hoàn tất.

Bảng phạm vi truy cập (Scopes)

Scope

Mô tả

callcenter

Truy cập API cuộc gọi, ghi âm, trạng thái agent

campaign

Quản lý chiến dịch autocall, SMS

contacts

Đọc/ghi danh bạ khách hàng, lead

reports

Truy cập báo cáo và thống kê

Quản lý API Key sau khi tạo

Sau khi tạo thành công, API Key sẽ xuất hiện trong bảng danh sách với các thông tin:

  • Tên — tên bạn đã đặt khi tạo

  • API Key — giá trị key dạng ẩn (masked), có nút copy để sao chép nhanh

  • Phạm vi — các scopes đã cấp, hiển thị dưới dạng tag màu

  • Trạng tháiĐang hoạt động (xanh) hoặc Không hoạt động

  • Ngày tạo — thời gian tạo key

  • Lần cuối dùng — thời gian gọi API gần nhất bằng key này

Nhấn biểu tượng (menu) ở cuối mỗi dòng để truy cập các hành động: Tạo lại key (regenerate) hoặc Thu hồi key (revoke).


Tạo API Key qua API

POST /api/v1.0/integration/api-keys

Ngoài giao diện, bạn có thể tạo API Key bằng cách gọi trực tiếp endpoint này.

Headers

Header

Kiểu

Bắt buộc

Mô tả

Authorization

string

Token xác thực. Định dạng: Bearer {{token}}

Content-Type

string

application/json

Body Parameters

Tham số

Kiểu

Bắt buộc

Mô tả

name

string

Tên định danh cho API Key (VD: "Key tích hợp CRM")

scopes

string[]

Danh sách phạm vi truy cập. Giá trị hợp lệ: callcenter, campaign, contacts, reports

expiresInDays

number | null

Không

Số ngày key có hiệu lực. Giá trị gợi ý: 30, 90, 365. Để null nếu không giới hạn

Code mẫu

curl -X POST "{{protocol}}://{{host}}:{{port}}/api/v1.0/integration/api-keys" \
  -H "Authorization: Bearer {{token}}" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Key tích hợp CRM",
    "scopes": ["callcenter", "contacts"],
    "expiresInDays": 90
  }'
const axios = require('axios')

const response = await axios.post(
  '{{protocol}}://{{host}}:{{port}}/api/v1.0/integration/api-keys',
  {
    name: 'Key tích hợp CRM',
    scopes: ['callcenter', 'contacts'],
    expiresInDays: 90
  },
  {
    headers: {
      'Authorization': 'Bearer {{token}}',
      'Content-Type': 'application/json'
    }
  }
)

// Lưu ý: key chỉ trả về 1 lần duy nhất — lưu ngay
console.log('API Key:', response.data.key)
import requests

url = '{{protocol}}://{{host}}:{{port}}/api/v1.0/integration/api-keys'
headers = {
    'Authorization': 'Bearer {{token}}',
    'Content-Type': 'application/json'
}
payload = {
    'name': 'Key tích hợp CRM',
    'scopes': ['callcenter', 'contacts'],
    'expiresInDays': 90
}

response = requests.post(url, json=payload, headers=headers)

# Lưu ý: key chỉ trả về 1 lần duy nhất — lưu ngay
data = response.json()
print('API Key:', data['key'])

Response thành công

HTTP 200 OK

{
  "id": "key_abc123def456",
  "name": "Key tích hợp CRM",
  "key": "alo_k_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  "scopes": ["callcenter", "contacts"],
  "createdAt": "2026-04-07T10:30:00.000Z"
}

Mô tả Response

Trường

Kiểu

Mô tả

id

string

ID định danh duy nhất của API Key

name

string

Tên API Key đã đặt

key

string

Giá trị API Key đầy đủ — chỉ trả về 1 lần duy nhất

scopes

string[]

Danh sách scopes đã cấp

createdAt

string

Thời gian tạo (ISO 8601)

Lỗi thường gặp

HTTP Code

Nguyên nhân

Cách xử lý

400

Thiếu name hoặc scopes rỗng

Kiểm tra body request đầy đủ các trường bắt buộc

401

Token không hợp lệ hoặc hết hạn

Lấy lại token xác thực mới

403

Tài khoản không có quyền tạo API Key

Liên hệ Alohub để được cấp quyền

409

Tên API Key đã tồn tại

Đổi tên key khác hoặc xóa key cũ trùng tên

Bảo mật: Không chia sẻ API Key qua email, chat hoặc lưu trong source code. Sử dụng biến môi trường (environment variables) để quản lý key trong ứng dụng của bạn.

Related Articles

Was this article helpful?
Updated: 4/17/2026
để chuyển bài