Blog 2.0 — Account#

Worker tạo tài khoản mới trên nền tảng blog, trả credentials để dùng cho luồng Post sau này.

Base URL: https://manager.likepion.com/api/v1/blog20_account


1. Lấy danh sách task #

curl -X GET 'https://manager.likepion.com/api/v1/blog20_account/links?limit=5' \
  -H 'X-API-Key: <api_key>'
ParamMặc địnhMô tả
limit5Số task muốn pull (tối đa 1000)

Response#

{
  "success": true,
  "data": [
    {
      "id": "f6b9cf30-8b04-49a9-9b2f-fd295ccc9d8b",
      "request_id": "7190c9ad-3b21-4777-ae99-3ebbf2eaf877",
      "type_request": "register",
      "domain": "pixnet.net",
      "website": "https://likepion.com",
      "email": "b20@seed.com",
      "username": "b20user",
      "pass_mail": "xxxx xxxx xxxx xxxx",
      "twofa": "JBSWY3DPEHPK3PXP",
      "app_password": "xxxx xxxx xxxx xxxx",
      "password": "Abc123!@xyzQ",
      "group_id": "a1b2c3d4-0000-4000-8000-000000000001",
      "name_group": "Nhóm blog A",
      "title": "Blog20 Title",
      "about": "<p>Introduction about my blog...</p>",
      "images": [
        { "url": "https://s3.likepion.com/avatars/b20.jpg" }
      ]
    }
  ]
}

Fields#

FieldMô tả
idID task
request_idID request cha
type_requestLuôn là register cho luồng này
group_id / name_groupID + tên nhóm account (để gom tài khoản theo chiến dịch)
domainNền tảng blog (pixnet.net, blogger.com, wordpress.com…)
websiteWebsite khách hàng
email / usernameEmail / username dùng để register
pass_mailMật khẩu Gmail/email
twofaBase32 secret TOTP (nếu có)
app_passwordApp password Gmail để receive verify qua IMAP
passwordMật khẩu tạo sẵn (12 ký tự: viết Hoa đầu + chữ thường + số + ký tự đặc biệt)
titleTên blog sẽ tạo
aboutBio blog (đã xử lý spin)
imagesDanh sách ảnh (avatar/cover)

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).

curl -X GET 'https://manager.likepion.com/api/v1/blog20_account/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": {
    "id": "f6b9cf30-8b04-49a9-9b2f-fd295ccc9d8b",
    "request_id": "7190c9ad-3b21-4777-ae99-3ebbf2eaf877",
    "type_request": "register",
    "domain": "pixnet.net",
    "website": "https://likepion.com",
    "email": "b20@seed.com",
    "username": "b20user",
    "password": "Abc123!@xyzQ",
    "pass_mail": "xxxx xxxx xxxx xxxx",
    "twofa": "JBSWY3DPEHPK3PXP",
    "app_password": "xxxx xxxx xxxx xxxx",
    "group_id": "a1b2c3d4-0000-4000-8000-000000000001",
    "name_group": "Nhóm blog A",
    "title": "Blog20 Title",
    "about": "<p>Introduction about my blog...</p>",
    "images": [{ "url": "https://s3.likepion.com/avatars/b20.jpg" }]
  }
}

Nếu task không tồn tại hoặc đã soft-delete → HTTP 404 {"success": false, "message": "task not found"}.


3. Báo đang xử lý #

Sau khi pull task, bắt buộc gọi API này để chuyển task sang trạng thái running. Assign tự set started_at = NOW() (idempotent — gọi lại nhiều lần không đổi).

curl -X POST 'https://manager.likepion.com/api/v1/blog20_account/links/<task_id>/start' \
  -H 'X-API-Key: <api_key>'

Response#

{ "success": true }

4. Báo hoàn thành #

Trả về credentials thực của account vừa tạo.

curl -X POST 'https://manager.likepion.com/api/v1/blog20_account/links/<task_id>/complete' \
  -H 'X-API-Key: <api_key>' \
  -H 'Content-Type: application/json' \
  -d '{
    "email": "realblog20@pixnet.com",
    "username": "realblog20user",
    "password": "realPwd123!",
    "cookie": "PHPSESSID=abc123; user=xyz",
    "home_link": "https://pixnet.net/blog/realblog20user",
    "quick_link": "https://pixnet.net/newpost"
  }'
FieldMô tả
emailEmail account thực (nếu khác với lúc register)
usernameUsername blog thực
passwordMật khẩu đăng nhập blog
cookieCookie session dùng cho luồng Post
home_linkURL trang chủ blog
quick_linkURL composer bài mới

Response#

{ "success": true }

5. Báo thất bại #

curl -X POST 'https://manager.likepion.com/api/v1/blog20_account/links/<task_id>/fail' \
  -H 'X-API-Key: <api_key>' \
  -H 'Content-Type: application/json' \
  -d '{"error_message": "email verify timeout"}'

Response#

{ "success": true }