---
title: "Xác thực và định dạng yêu cầu API phía máy chủ"
description: ""
---

## Xác thực \{#authorization\}

Các yêu cầu API phải được xác thực bằng secret key hoặc public API key của bạn thông qua header Authorization. Bạn có thể tìm thấy chúng trong [**App Settings**](https://app.adapty.io/settings/general). Định dạng giá trị là `Api-Key {your-secret-api-key}`, ví dụ: `Api-Key secret_live_...`.

:::important
API key là theo từng ứng dụng. Nếu bạn có nhiều ứng dụng, hãy đảm bảo sử dụng các key khác nhau cho mỗi ứng dụng.
:::

## Định dạng yêu cầu \{#request-format\}

**Headers**

Các yêu cầu API phía máy chủ yêu cầu các header cụ thể và phần thân JSON. Sử dụng thông tin bên dưới để cấu trúc yêu cầu của bạn.

| **Header**                  | **Mô tả**                                              |
| --------------------------- | ------------------------------------------------------------ |
| **adapty-profile-id**       | <p>ID hồ sơ người dùng Adapty của người dùng. Hiển thị trong trường **Adapty ID** trên trang [Adapty Dashboard -> **Profiles**](https://app.adapty.io/profiles/users) -> trang hồ sơ cụ thể. </p><p>Có thể dùng thay thế cho **adapty-customer-user-id**, dùng một trong hai đều được.</p> |
| **adapty-customer-user-id** | <p>ID người dùng trong hệ thống của bạn. Hiển thị trong trường **Customer user ID** trên trang [Adapty Dashboard -> **Profiles**](https://app.adapty.io/profiles/users) -> trang hồ sơ cụ thể. </p><p>Có thể dùng thay thế cho **adapty-profile-id**, dùng một trong hai đều được.</p><p> ⚠️ Chỉ hoạt động nếu bạn <InlineTooltip tooltip="xác định người dùng trong ứng dụng">[iOS](identifying-users), [Android](android-identifying-users), [React Native](react-native-identifying-users), [Flutter](flutter-identifying-users), và [Unity](unity-identifying-users)</InlineTooltip> trong mã ứng dụng bằng Adapty SDK.</p> |
| **adapty-platform**         | (tùy chọn) Chỉ định nền tảng của thiết bị mà ứng dụng được cài đặt. Chúng tôi khuyến nghị đặt tham số này trong các yêu cầu [Create profile](api-adapty/operations/createProfile) và [Update profile](api-adapty/operations/updateProfile) khi chỉnh sửa đối tượng [Installation Meta](server-side-api-objects#installation-meta), vì nó phụ thuộc vào thiết bị người dùng đang dùng và một người dùng có thể có nhiều thiết bị. Các giá trị có thể có: `iOS`, `macOS`, `iPadOS`, `visionOS`, `Android`, hoặc `web`. |
| **Content-Type**            | Đặt thành `application/json` để API xử lý yêu cầu. |

**Body**

API yêu cầu phần thân có định dạng JSON với dữ liệu cần thiết cho yêu cầu.

## Giới hạn tốc độ \{#rate-limits\}

Để tránh bị throttle, hãy đảm bảo số lượng yêu cầu (mỗi ứng dụng) không vượt quá 40.000 yêu cầu mỗi phút.

Nếu vượt quá giới hạn này, hệ thống có thể bị chậm hoặc tạm thời chặn các yêu cầu tiếp theo nhằm duy trì hiệu suất tối ưu cho tất cả người dùng.

## Xoay vòng API key \{#rotate-api-keys\}

Nếu bạn cần xoay vòng secret API key:

1. Trong **Settings → General**, nhấp vào **Generate new key**, sau đó nhấp vào biểu tượng thùng rác bên cạnh key cũ.
2. Cập nhật key đang dùng trong ứng dụng của bạn.

---

**Tiếp theo — các yêu cầu:**

- [Lấy hồ sơ](api-adapty/operations/getProfile)
- [Tạo hồ sơ](api-adapty/operations/createProfile)
- [Cập nhật hồ sơ](api-adapty/operations/updateProfile)
- [Xóa hồ sơ](api-adapty/operations/deleteProfile)
- [Cấp mức độ truy cập](api-adapty/operations/grantAccessLevel)
- [Thu hồi mức độ truy cập](api-adapty/operations/revokeAccessLevel)
- [Đặt giao dịch](api-adapty/operations/setTransaction)
- [Xác thực mua hàng, cấp mức độ truy cập cho khách hàng và nhập lịch sử giao dịch của họ](api-adapty/operations/validateStripePurchase)
- [Lấy paywall](api-adapty/operations/getPaywall)
- [Liệt kê paywall](api-adapty/operations/listPaywalls)
- [Cập nhật paywall](api-adapty/operations/updatePaywall)