Phân trang & giới hạn tần suất
Phân trang bằng con trỏ
Phần tiêu đề “Phân trang bằng con trỏ”Các endpoint danh sách trả về:
{ "data": [ … ], "nextCursor": "eyJpZCI6ImJ0eF8wMUpEN…" }limit: 1–100 (mặc định 25).- Gửi
cursor=<nextCursor>để lấy trang tiếp theo.nextCursor: null= hết. - Kết quả mới nhất trước; dữ liệu mới phát sinh trong lúc bạn đang lật trang không làm trùng hay sót bản ghi.
let cursor = nulldo { const url = new URL('https://api.hensa.example/v1/bank_transactions') url.searchParams.set('limit', '100') if (cursor) url.searchParams.set('cursor', cursor) const page = await (await fetch(url, { headers: { Authorization: `Bearer ${process.env.HENSA_API_KEY}` } })).json() for (const tx of page.data) handle(tx) cursor = page.nextCursor} while (cursor)Giới hạn tần suất
Phần tiêu đề “Giới hạn tần suất”Hensa giới hạn số request theo khóa API và theo cửa hàng. Vượt giới hạn → 429 rate_limited kèm header Retry-After (giây). Hãy chờ đúng thời gian đó rồi thử lại.
Mẹo: dùng webhook thay vì hỏi API liên tục để biết tiền về – vừa nhanh hơn vừa không lo giới hạn.