Afi Planner có API kèm webhook không?
Trả lời ngắn
Có. Mọi gói Afi Planner, kể cả bản dùng thử miễn phí, đều có REST API (mô tả bằng OpenAPI 3.1) để tạo đơn, lập và gửi tuyến, đọc trạng thái, ETA và bằng chứng giao hàng, cùng webhook có chữ ký cho mọi thay đổi. Yêu cầu POST nhận Idempotency-Key nên gửi lại không bao giờ tạo đơn thứ hai, và mỗi webhook mang một số thứ tự để hệ thống của bạn sắp lại sự kiện đúng thứ tự sau khi gửi lại.
Cách hoạt động trong Afi Planner
Gửi lại không bao giờ nhân đôi đơn
Gửi header Idempotency-Key với yêu cầu POST: cùng khóa với cùng nội dung trong 24 giờ nhận lại câu trả lời đầu tiên thay vì làm thêm một lần. Đơn cũng mang mã đơn của chính bạn, nên gửi lại cùng mã cho cùng ngày sẽ cập nhật đơn đó, miễn là chưa có tài xế nào làm đơn. Khi tài xế đã làm, đơn được giữ nguyên làm hồ sơ giao hàng: gửi lại sẽ bị từ chối với 409 order_worked kèm id của đơn, và PATCH /api/v1/orders/{id} dùng để sửa các trường của đơn.
- Cùng khóa với nội dung hoặc đường dẫn khác bị từ chối (409 idempotency_conflict)
- Lần gửi lại tới khi yêu cầu đầu vẫn đang chạy cũng bị từ chối (409 idempotency_in_progress)
- Tối đa 1.000 đơn mỗi yêu cầu theo lô, và 600 yêu cầu mỗi phút cho mỗi khóa
- Kế hoạch của một ngày chứa tối đa số điểm giao mỗi kế hoạch của gói (500 với bản dùng thử miễn phí): lô có nhiều đơn mới hơn chỗ còn lại bị từ chối toàn bộ (403 kèm planFull)
Sự kiện sắp lại được đúng thứ tự
Mỗi webhook mang một số sequence: bộ đếm riêng của công ty, tăng một cho mỗi sự kiện, không bao giờ dùng lại. Lần gửi lại mang cùng id, sequence và nội dung như lần đầu, nên hệ thống của bạn chỉ áp dụng một sự kiện nếu sequence của nó lớn hơn sự kiện cuối đã áp dụng cho đơn đó. occurredAt cho biết lúc việc xảy ra, như giờ giao trong báo cáo.
- order.created, order.updated, order.status_changed, order.loaded (tài xế xác nhận đã xếp đơn lên xe khi kiểm hàng), order.eta_changed, order.rescheduled_by_customer, order.instructions_changed, order.rated, order.not_attempted, order.moved_back, order.cancelled, order.deleted
- plan.optimized, plan.job_failed, route.dispatched
- Endpoint chỉ nghe vài loại sự kiện sẽ thấy sequence bị nhảy số (sự kiện gửi thử tới endpoint khác cũng làm nhảy số); nó chỉ tăng
Có chữ ký, có gửi lại, và nhìn thấy được
Mỗi yêu cầu được ký bằng HMAC-SHA256 kèm dấu thời gian trong header Afi-Signature. Trả về mã 2xx trong vòng 10 giây; lần gửi thất bại được thử lại với khoảng chờ tăng dần trong khoảng một ngày, và mọi lần thử hiện trong nhật ký gửi kèm mã HTTP, với “Send test” và “Retry now” trong Cài đặt.
Thử trong bản demo trực tiếp
Một công ty giao hàng hư cấu đang giữa ngày làm việc. Chỉ xem, không cần đăng ký.
Mở bản demo trực tiếp →Tính năng
Tích hợp & API
Kết nối cửa hàng, ERP hoặc WMS của bạn với Afi Planner theo cả hai chiều: gửi đơn vào qua REST API, lập tuyến và điều phối, rồi nhận lại trạng thái giao hàng, ETA trực tiếp và bằng chứng giao hàng qua webhook có ký xác thực.
7 bước · 7 phút đọc
Kết nối hệ thống bằng API và webhook
Câu hỏi thường gặp
API có tính thêm phí không?
Không. API và webhook có trong mọi gói, kể cả bản dùng thử miễn phí.
Nếu endpoint của chúng tôi bị sập thì sao?
Mỗi sự kiện được thử lại trong khoảng một ngày. Endpoint lỗi liên tục ba ngày liền sẽ bị tắt và hiện như vậy trong Cài đặt → Developers. Sự kiện phát sinh khi endpoint đang tắt (do bạn tắt hoặc do lỗi) không được giữ lại cho nó, và sequence không cho thấy đã bị bỏ lỡ: sau khi bật lại, hãy đọc lại đơn trong ngày bằng GET /api/v1/orders?day=.
Có app Shopify hay Zapier không?
Chưa có. Hiện bạn kết nối chúng qua API và webhook.
Thêm giải đáp
- Làm sao thêm đơn mới khi tài xế đã rời kho?
- Làm sao xem chính xác chuyện gì đã xảy ra trong một ngày giao hàng, từng phút một?
- Có một danh sách gom mọi việc điều phối viên cần xử lý trong ngày không?
- Khách hàng có theo dõi đơn với ETA trực tiếp và xem bằng chứng giao hàng được không?
- App tài xế có chạy được khi mất sóng không?
- Làm sao nhập đơn giao hàng từ Excel hoặc CSV mà không bị nhầm ngày?
Lập tuyến ngày mai chỉ trong 3 phút
Bắt đầu dùng thử miễn phí 3 tháng. Không cần thẻ tín dụng, không cần cuộc gọi thiết lập, không cần cài đặt.
