Webhooks
Webhooks cho phép bạn nhận thông báo real-time về các liên kết của bạn — cả khi chúng được nhấp và khi chúng được tạo, cập nhật hoặc xóa. Linkly gửi yêu cầu POST đến URL được chỉ định của bạn với thông tin chi tiết về mỗi sự kiện.
Các trường hợp sử dụng
- Nền tảng tự động hóa: Kích hoạt quy trình làm việc trong Make hoặc Zapier khi các liên kết được nhấp
- Phân tích tùy chỉnh: Gửi dữ liệu nhấp chuột đến hệ thống phân tích của riêng bạn
- Cập nhật CRM: Cập nhật hồ sơ khách hàng khi họ nhấp vào liên kết
- Thông báo Slack: Nhận thông báo trong Slack khi các liên kết quan trọng được nhấp
- Theo dõi khách hàng tiềm năng: Theo dõi khi các khách hàng tiềm năng tương tác với các liên kết của bạn
Mẹo: Đối với hầu hết các trường hợp sử dụng tự động hóa, tích hợp Make hoặc tích hợp Zapier của chúng tôi dễ thiết lập hơn webhooks tùy chỉnh. Chúng bao gồm các kích hoạt nhấp chuột tức thì được hỗ trợ bởi webhooks, mà không cần mã hóa.
Cách thiết lập webhooks cấp liên kết
Đi tới Links và nhấp vào liên kết bạn muốn định cấu hình.
Cuộn xuống phần Webhooks.
Nhập URL webhook của bạn, một trên mỗi dòng.
Bạn có thể thêm nhiều URL webhook. Tất cả các URL sẽ nhận cùng một payload khi liên kết được nhấp.

Nhấp vào Save Link.
Webhooks cấp liên kết chỉ kích hoạt khi liên kết cụ thể đó được nhấp.
Cách thiết lập webhooks cấp không gian làm việc
Đi tới Settings (biểu tượng bánh răng trong thanh bên).
Nhấp vào Workspace Settings
Nhập URL webhook của bạn, một trên mỗi dòng.
Bạn có thể thêm nhiều URL webhook. Tất cả các URL sẽ nhận cùng một payload khi bất kỳ liên kết nào trong không gian làm việc của bạn được nhấp.

Nhấp vào Save Settings.
Webhooks cấp không gian làm việc kích hoạt cho mọi nhấp chuột vào bất kỳ liên kết nào trong không gian làm việc của bạn.
Lưu ý: Nếu bạn định cấu hình webhooks ở cả hai cấp độ, cả hai sẽ kích hoạt cho các nhấp chuột vào liên kết đó.
Sự kiện
Mỗi webhook nhận tất cả các loại sự kiện cho phạm vi của nó — một webhook cấp liên kết nhận các sự kiện cho liên kết đó, một webhook cấp không gian làm việc nhận các sự kiện cho mọi liên kết trong không gian làm việc. Kiểm tra trường event cấp trên để phân biệt chúng:
event | Được gửi khi |
|---|---|
click | Một liên kết rút ngắn được nhấp. Bao gồm một đối tượng click với dữ liệu yêu cầu của khách truy cập. |
link.created | Một liên kết mới được tạo trong không gian làm việc. |
link.updated | Cài đặt liên kết thay đổi. Kích hoạt trên mỗi cập nhật, bao gồm các chỉnh sửa tự động lưu, vì vậy bạn có thể nhận được nhiều cập nhật cho mỗi phiên chỉnh sửa. |
link.deleted | Một liên kết bị xóa. Đối tượng link giữ slug và miền mà nó có trước khi xóa. |
Payload webhook
Payload nhấp chuột
Khi xảy ra nhấp chuột, Linkly gửi yêu cầu POST với payload JSON sau:
{
"event": "click",
"timestamp": "2025-01-15T10:30:00Z",
"link": {
"id": 12345,
"name": "My Campaign Link",
"url": "https://example.com/landing-page",
"full_url": "https://yourdomain.com/abc123",
"domain": "yourdomain.com",
"slug": "/abc123",
"destination": "https://example.com/landing-page",
"workspace_id": 1,
"enabled": true,
"cloaking": false,
"forward_params": true,
"block_bots": true,
"public_analytics": false,
"utm_source": "newsletter",
"utm_medium": "email",
"utm_campaign": "spring-sale",
"og_title": "Special Offer",
"og_description": "Check out our spring sale!",
"rules": [
{
"what": "country",
"matches": "US",
"url": "https://example.com/us-landing"
}
]
},
"click": {
"id": "01KYPGEEPJSPR3S564QRBDGA1W",
"country": "US",
"is_eu_country": false,
"platform": "desktop",
"browser_name": "Chrome",
"referer": "https://twitter.com/",
"isp": "Comcast",
"bot_name": null,
"destination": "https://example.com/landing-page",
"params": {
"utm_source": "twitter"
}
}
}
Các trường payload
Thông tin sự kiện
| Trường | Mô tả |
|---|---|
event | click, link.created, link.updated, hoặc link.deleted |
timestamp | Dấu thời gian ISO 8601 của lần nhấp chuột |
Đối tượng liên kết
| Trường | Mô tả |
|---|---|
id | Mã định danh liên kết duy nhất |
name | Biệt danh liên kết |
url | URL đích ban đầu |
full_url | URL liên kết rút ngắn |
domain | Miền tùy chỉnh (nếu được định cấu hình) |
slug | Đường dẫn URL/slug |
destination | Đích thực tế cho lần nhấp chuột này (có thể khác với url nếu các quy tắc được áp dụng) |
workspace_id | Mã định danh không gian làm việc |
enabled | Liệu liên kết có hoạt động |
rules | Mảng các quy tắc chuyển hướng (geo, device, rotator) |
utm_* | Các tham số UTM nếu được định cấu hình |
og_* | Cài đặt Open Graph nếu được định cấu hình |
Đối tượng nhấp chuột
| Trường | Mô tả |
|---|---|
id | Mã định danh duy nhất cho lần nhấp chuột này, một ULID 26 ký tự. Các ký tự đầu tiên mã hóa thời gian nhấp chuột, vì vậy id sắp xếp theo thứ tự thời gian như các chuỗi đơn giản |
country | Mã quốc gia hai chữ cái (ví dụ: "US", "GB") |
is_eu_country | Liệu nhấp chuột có bắt nguồn từ EU |
platform | Nền tảng thiết bị (desktop, ios, android, v.v.) |
browser_name | Tên trình duyệt (Chrome, Safari, Firefox, v.v.) |
referer | URL tham chiếu (nếu có) |
isp | Nhà cung cấp Dịch vụ Internet |
bot_name | Mã định danh bot (null cho nhấp chuột của con người) |
destination | URL đích cuối cùng cho lần nhấp chuột này |
params | Các tham số truy vấn được chuyển đến liên kết |
Lưu ý về Quyền riêng tư: Địa chỉ IP không bao giờ được đưa vào payload webhook.
Payload vòng đời liên kết
Các sự kiện link.created, link.updated và link.deleted chia sẻ một hình dạng. Không có đối tượng click — bạn nhận event, timestamp và link đầy đủ:
{
"event": "link.created",
"timestamp": "2026-06-20T10:30:00Z",
"link": {
"id": 12345,
"name": "My Campaign Link",
"url": "https://example.com/landing-page",
"full_url": "https://yourdomain.com/abc123",
"domain": "yourdomain.com",
"slug": "/abc123",
"workspace_id": 1,
"enabled": true,
"rules": []
}
}
Tích hợp nền tảng tự động hóa
Để thiết lập dễ dàng hơn mà không cần mã hóa tùy chỉnh, hãy sử dụng các tích hợp gốc của chúng tôi:
- Tích hợp Make - Nền tảng tự động hóa trực quan với các kích hoạt nhấp chuột tức thì
- Tích hợp Zapier - Kết nối Linkly với hàng nghìn ứng dụng mà không cần mã
Cả hai tích hợp đều sử dụng webhooks bên dưới nhưng xử lý tất cả các thiết lập tự động.
Các phương pháp hay nhất
Nhiều webhooks
Bạn có thể thêm nhiều URL webhook (một trên mỗi dòng). Tất cả các URL sẽ nhận cùng một payload khi xảy ra nhấp chuột.
Xử lý lỗi
- Webhooks là fire-and-forget - Linkly không thử lại các lần gửi không thành công
- Các lỗi webhook không bao giờ ảnh hưởng đến chuyển hướng - người dùng luôn đến được đích của họ
- Đảm bảo điểm cuối webhook của bạn phản hồi nhanh chóng (khuyến nghị < 5 giây)
Bảo mật
- Sử dụng các điểm cuối HTTPS cho URL webhook
- Xác thực các yêu cầu đến trong trình xử lý webhook của bạn
- Cân nhắc thêm tham số bí mật vào URL webhook của bạn để xác minh
Thử nghiệm
- 1Thiết lập URL webhook bằng cách sử dụng dịch vụ như webhook.site hoặc RequestBin
- 2Nhấp vào liên kết của bạn
- 3Kiểm tra payload đã nhận
- 4Sau khi xác minh, chuyển sang URL webhook sản xuất của bạn
Truy cập API
Bạn cũng có thể quản lý webhooks theo chương trình thông qua API:
POST /api/v1/link/:link_id/webhooks
DELETE /api/v1/link/:link_id/webhooks/:hook_id
GET /api/v1/link/:link_id/webhooks
POST /api/v1/workspace/:workspace_id/webhooks
DELETE /api/v1/workspace/:workspace_id/webhooks/:hook_id
GET /api/v1/workspace/:workspace_id/webhooks
Xem Tài liệu API để biết chi tiết.
Webhooks FAQs
Webhooks có thể gửi những sự kiện nào?
Webhooks kích hoạt trên bốn sự kiện, được xác định bởi trường event trong payload. Bạn nhận được click khi một liên kết được nhấp, cộng với link.created, link.updated và link.deleted khi các liên kết thay đổi. Mỗi webhook nhận tất cả các loại sự kiện cho phạm vi của nó, vì vậy hãy phân nhánh trên trường event để xử lý từng loại.
Tại sao webhooks của tôi không kích hoạt?
Kiểm tra xem URL webhook của bạn có hợp lệ và có thể truy cập được, và webhooks được lưu trên liên kết hoặc không gian làm việc. Đối với các sự kiện nhấp chuột, lưu ý rằng webhooks chỉ kích hoạt khi nhấp chuột thực sự được ghi lại - các IP bị loại trừ hoặc crawler bị bỏ qua sẽ không kích hoạt chúng.
Tại sao một số trường là null trong payload webhook?
Một số trường có thể là null nếu thông tin không có sẵn (ví dụ: không có referer), cài đặt quyền riêng tư đã ngăn chặn việc thu thập, hoặc nhấp chuột đến từ một bot (trong trường hợp đó, bot_name sẽ được điền).
Linkly có thử lại các lần gửi webhook không thành công không?
Không. Webhooks là fire-and-forget. Các lần gửi không thành công không được thử lại, và Linkly không theo dõi trạng thái gửi webhook. Các yêu cầu webhook hết thời gian chờ sau 5 giây.
Linkly có hỗ trợ postback để theo dõi chuyển đổi không?
Không. Webhooks Linkly chỉ dành cho đầu ra và kích hoạt khi nhấp chuột xảy ra. Chúng tôi không thể nhận dữ liệu postback từ các mạng liên kết hoặc nền tảng quảng cáo. Để theo dõi chuyển đổi, hãy sử dụng theo dõi gốc của nền tảng đích, chuyển ID nhấp chuột qua chuyển tiếp tham số truy vấn, hoặc sử dụng tích hợp BigQuery của chúng tôi để kết nối dữ liệu nhấp chuột với dữ liệu chuyển đổi của bạn.
Tôi nên sử dụng webhooks hay Make/Zapier?
Đối với hầu hết các trường hợp sử dụng tự động hóa, các tích hợp Make hoặc Zapier của chúng tôi dễ thiết lập hơn. Chúng sử dụng webhooks bên dưới nhưng xử lý tất cả các cấu hình tự động. Sử dụng webhooks tùy chỉnh khi bạn cần gửi dữ liệu đến hệ thống của riêng bạn hoặc cần kiểm soát tích hợp nhiều hơn.
Tính khả dụng của gói dịch vụ
Có sẵn trên Business trở lên
Nhận ngay 100 liên kết rút gọn và theo dõi 500 lượt nhấp chuột mỗi tháng hoàn toàn miễn phí.
Không cần thẻ tín dụng
Khối lượng giao dịch lớn? Hãy liên hệ với đội ngũ của chúng tôi.