Indexing#
service_type: indexing · type_request: indexing · Bảng DB: indexing_link
Dịch vụ yêu cầu Google/Bing crawl + index URL mới tạo (thường dùng sau khi các dịch vụ khác như link_cloud/blog20 đã hoàn thành).
Lưu ý: Task_generator không tự tạo indexing_link — các dịch vụ khác trigger tạo qua callback khi link post hoàn thành.
Server nhận task: services[] chứa indexing (ví dụ Indexing 1).
1. Lấy danh sách task#
Request#
curl -X GET 'https://manager.likepion.com/api/v1/worker/tasks?limit=5' \
-H 'X-API-Key: <api_key_server_indexing>'Response#
{
"success": true,
"data": [
{
"id": "a67c616c-cf6f-4f53-92a8-393d69a0cf58",
"service_type": "indexing",
"type_request": "indexing",
"request_id": "",
"domain": "https://my-site.github.io/blog/post-1",
"extras": {
"source_service": "link_cloud",
"url": "https://my-site.github.io/blog/post-1",
"index_source": "google_indexing_api"
}
}
]
}Giải thích fields#
| Field | Mô tả |
|---|---|
id | ID task |
domain | Chính là URL cần index (lấy từ indexing_link.url) |
request_id | Thường rỗng (indexing không bắt buộc thuộc request cụ thể) |
extras.source_service | Dịch vụ gốc tạo URL (link_cloud, blog20, entity, social, podcast, stacking, blog_comment) |
extras.url | URL target (duplicate của domain cho rõ ràng) |
extras.index_source | API/method dùng để index (google_indexing_api, bing_webmaster, instant_indexing, sitemap_ping…) |
2. Lấy chi tiết task #
Lấy thông tin 1 task cụ thể theo id. Không cần filter server/status. Không thay đổi DB.
curl -X GET 'https://manager.likepion.com/api/v1/indexing/links/TASK_ID' \
-H 'X-API-Key: <api_key>'Response#
Trả về 1 object (không bọc trong mảng) — schema giống bước 1.
{ "success": true, "data": { ...task fields... } }Nếu task không tồn tại hoặc đã soft-delete → HTTP 404 {"success": false, "message": "task not found"}.
3. Báo hoàn thành#
Request#
curl -X POST 'https://manager.likepion.com/api/v1/worker/tasks/a67c616c-cf6f-4f53-92a8-393d69a0cf58/complete?service_type=indexing&type_request=indexing' \
-H 'X-API-Key: <api_key>' \
-H 'Content-Type: application/json' \
-d '{
"service_type": "indexing",
"type_request": "indexing",
"note": "indexed successfully via Google Indexing API"
}'| Field | Bắt buộc | Mô tả |
|---|---|---|
service_type | ✔ | indexing |
type_request | ✔ | indexing |
note | Ghi chú kết quả (thường dùng để lưu index status/timestamp từ Google) |
Response#
{ "success": true }4. Báo thất bại#
Request#
curl -X POST 'https://manager.likepion.com/api/v1/worker/tasks/a67c616c-cf6f-4f53-92a8-393d69a0cf58/fail?service_type=indexing&type_request=indexing' \
-H 'X-API-Key: <api_key>' \
-H 'Content-Type: application/json' \
-d '{
"service_type": "indexing",
"type_request": "indexing",
"error_message": "URL rejected by Google Indexing API: no robots.txt"
}'Response#
{ "success": true }5. Flow#
1. Service khác (vd link_cloud) hoàn thành → callback tạo indexing_link
2. Dispatcher gán server_id (Indexing 1)
3. Tool pull → nhận URL + source_service + index_source
4. Gọi API tương ứng:
- google_indexing_api → POST /v1/urlNotifications (service account)
- bing_webmaster → POST /GetURL
- sitemap_ping → GET google.com/ping?sitemap=...
5. POST /tasks/:id/complete (hoặc fail)