A Comment là một phản hồi của người đọc tới một bài viết trong Blog. Chúng xuất hiện trên trang bài viết theo thứ tự thời gian, phía dưới nội dung bài viết.
Giống như Blog có thể có nhiều bài viết, một bài viết cũng có thể có nhiều Comment. Comment trong Blog có thể là mục tiêu của các spammer, vì vậy Blog của Sapo sử dụng hệ thống chống spam để xác định xem Comment có giống như spam hay không. Chủ shop có thể đánh dấu Comment như là spam, không chỉ để ẩn, hiện comment đối với người dùng mà còn giúp cải thiện cho hệ thống chống spam của Sapo.
Bạn có thể làm gì với Comment?
Sapo API cho phép bạn thực hiện các thao tác sau với tài nguyên Comment. Các phiên bản chi tiết hơn của những thao tác này có thể có:
Các thuộc tính của Comment
article_id |
{ "article_id" : 134645308 }
Số duy nhất định danh bài viết chứa comment. |
author |
Tên người viết comment. |
blog_id |
{ "blog_id" : 241253187 }
Số duy nhất định danh Blog chứa bài viết có comment. |
body |
{ "body" : "I really _like_ this." }
Nội dung comment. |
created_on |
{ "created_on" : "2012-08-24T14:01:46Z" }
Thời gian tạo Comment. API trả về kết quả theo định dạng chuẩn ISO 8601. |
email |
Địa chỉ email của người viết comment. |
id |
Số duy nhất định danh comment. |
ip |
Địa chỉ IP của người viết comment. |
published_on |
{ "published_on" : "2012-08-24T14:02:00Z" }
Thời gian xuất bản Comment. Trong trường hợp này, thời gian này cũng là thời gian tạo. API trả về kết quả theo định dạng chuẩn ISO 8601. |
status |
Trạng thái của comment. Các giá trị có thể có:
- unapproved (default): Comment đang chờ duyệt bởi chủ shop và người đọc chưa đọc được trên Blog.
- published: Comment đã được duyệt (nếu Blog được cài đặt yêu cầu comment cần phải duyệt) và người dùng có thể xem Comment trên Blog.
- spam: Comment đã bị đánh dấu là spam bởi chủ shop và người đọc không thể xem trên Blog.
- removed: Comment đã bị xóa khỏi bài viết.
|
modified_on |
{ "modified_on" : "null" }
Thời gian chỉnh sửa cuối cùng của comment. Khi Comment mới được tạo, thời gian chỉnh sửa trùng với thời gian tạo. Nếu Blog yêu cầu Comment cần được duyệt, giá trị của trường này sẽ là thời gian Comment được duyệt. API trả về kết quả theo định dạng chuẩn ISO 8601. |
agent |
{ "agent" : "Mozilla/5.0" }
Xác định phần mềm (thường là Browser) được sử dụng khi tạo Comment. |
Endpoints
GET/admin/comments.json
Lấy ra danh sách tất cả các comment của một bài viết
limit |
Số lượng kết quả (mặc định: 50) (tối đa: 250) |
page |
Số trang (mặc định: 1) |
since_id |
Giới hạn kết quả sau một ID xác định |
created_on_min |
Hiển thị các Comment được tạo sau ngày này (định dạng: 2008-12-31 03:00) |
created_on_max |
Hiển thị các Comment được tạo trước ngày này (định dạng: 2008-12-31 03:00) |
modified_on_min |
Hiển thị các Comment cập nhật sau ngày này (định dạng: 2008-12-31 03:00) |
modified_on_max |
Hiển thị các Comment cập nhật trước ngày này (định dạng: 2008-12-31 03:00) |
published_on_min |
Hiển thị các Comment xuất bản sau ngày này (định dạng: 2008-12-31 03:00) |
published_on_max |
Hiển thị các Comment xuất bản trước ngày này (định dạng: 2008-12-31 03:00) |
fields |
Danh sách các trường trong kết quả trả về, cách nhau bởi dấu phẩy |
published |
- true - Lấy những Comment đã được xuất bản
- false - Lấy những Comment chưa được xuất bản
|
status |
- pending - Tất cả các Comment đang chờ duyệt
- published - Tất cả các Comment đã được xuất bản
- unapproved - Tất cả các Commnet không được duyệt
|
Lấy tất cả các Comment của Shop
HTTP/1.1 200 OK
{
"comments": [
{
"id": 653537639,
"body": "Hi author, I really _like_ what you're doing there.",
"author": "Soleone",
"email": "[email protected]",
"status": "unapproved",
"article_id": 134645308,
"blog_id": 241253187,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:52:56Z",
"ip": "127.0.0.1",
"agent": "Mozilla\/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit\/525.18 (KHTML, like Gecko) Version\/3.1.2 Safari\/525.20.1",
"published_on": null
},
{
"id": 118373535,
"body": "Hi author, I really _like_ what you're doing there.",
"author": "Soleone",
"email": "[email protected]",
"status": "published",
"article_id": 134645308,
"blog_id": 241253187,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:52:56Z",
"ip": "127.0.0.1",
"agent": "Mozilla\/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit\/525.18 (KHTML, like Gecko) Version\/3.1.2 Safari\/525.20.1",
"published_on": null
}
]
}
Get all the comments for a certain article of a blog
GET /admin/comments.json?article_id=134645308&blog_id=241253187
Xem kết quả
HTTP/1.1 200 OK
{
"comments": [
{
"id": 653537639,
"body": "Hi author, I really _like_ what you're doing there.",
"author": "Soleone",
"email": "[email protected]",
"status": "unapproved",
"article_id": 134645308,
"blog_id": 241253187,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:52:56Z",
"ip": "127.0.0.1",
"agent": "Mozilla\/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit\/525.18 (KHTML, like Gecko) Version\/3.1.2 Safari\/525.20.1",
"published_on": null
},
{
"id": 118373535,
"body": "Hi author, I really _like_ what you're doing there.",
"author": "Soleone",
"email": "[email protected]",
"status": "published",
"article_id": 134645308,
"blog_id": 241253187,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:52:56Z",
"ip": "127.0.0.1",
"agent": "Mozilla\/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit\/525.18 (KHTML, like Gecko) Version\/3.1.2 Safari\/525.20.1",
"published_on": null
}
]
}
Lấy tất cả các Comment sau một ID xác định
HTTP/1.1 200 OK
{
"comments": [
{
"id": 653537639,
"body": "Hi author, I really _like_ what you're doing there.",
"author": "Soleone",
"email": "[email protected]",
"status": "unapproved",
"article_id": 134645308,
"blog_id": 241253187,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:52:56Z",
"ip": "127.0.0.1",
"agent": "Mozilla\/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit\/525.18 (KHTML, like Gecko) Version\/3.1.2 Safari\/525.20.1",
"published_on": null
}
]
}
Lấy tất cả các Comment của tất cả các bài viết trong một Blog
HTTP/1.1 200 OK
{
"comments": [
{
"id": 653537639,
"body": "Hi author, I really _like_ what you're doing there.",
"author": "Soleone",
"email": "[email protected]",
"status": "unapproved",
"article_id": 134645308,
"blog_id": 241253187,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:52:56Z",
"ip": "127.0.0.1",
"agent": "Mozilla\/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit\/525.18 (KHTML, like Gecko) Version\/3.1.2 Safari\/525.20.1",
"published_on": null
},
{
"id": 118373535,
"body": "Hi author, I really _like_ what you're doing there.",
"author": "Soleone",
"email": "[email protected]",
"status": "published",
"article_id": 134645308,
"blog_id": 241253187,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:52:56Z",
"ip": "127.0.0.1",
"agent": "Mozilla\/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit\/525.18 (KHTML, like Gecko) Version\/3.1.2 Safari\/525.20.1",
"published_on": null
}
]
}
GET/admin/comments/count.json
Lấy tổng số Comment của một bài viết
created_on_min |
Tổng số Comment được tạo sau ngày này (định dạng: 2008-12-31 03:00) |
created_on_max |
Tổng số Comment được tạo trước ngày này (định dạng: 2008-12-31 03:00) |
modified_on_min |
Tổng số Comment được cập nhật sau ngày này (định dạng: 2008-12-31 03:00) |
modified_on_max |
Tổng số Comment được cập nhật trước ngày này (định dạng: 2008-12-31 03:00) |
published_on_min |
Tổng số Comment đã xuất bản sau ngày này (định dạng: 2008-12-31 03:00) |
published_on_max |
Tổng số Comment đã xuất bản trước ngày này (định dạng: 2008-12-31 03:00) |
published |
- true - Tổng số Comment đã xuất bản
- false - Tổng số Comment chưa được xuất bản
|
status |
- pending - Tất cả các Comment đang chờ duyệt
- published - Tổng các Comment đã xuất bản
- unapproved - Tổng các Commnet không được duyệt
|
Lấy ra tổng tất cả Comment của Shop
HTTP/1.1 200 OK
{
"count": 2
}
Lấy ra tổng các Comment của tất cả các bài viết trong một Blog
GET /admin/comments/count.json?blog_id=241253187
Xem kết quả
HTTP/1.1 200 OK
{
"count": 2
}
Tính tổng số Comment của một bài viết trong Blog
GET /admin/comments/count.json?article_id=134645308&blog_id=241253187
Xem kết quả
HTTP/1.1 200 OK
{
"count": 2
}
GET/admin/comments/118373535.json
Lấy một Comment bằng ID
fields |
Danh sách các trường trong kết quả trả về, cách nhau bởi dấu phẩy |
Lấy một Comment
HTTP/1.1 200 OK
{
"comment": {
"id": 118373535,
"body": "Hi author, I really _like_ what you're doing there.",
"author": "Soleone",
"email": "[email protected]",
"status": "published",
"article_id": 134645308,
"blog_id": 241253187,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:52:56Z",
"ip": "127.0.0.1",
"agent": "Mozilla\/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit\/525.18 (KHTML, like Gecko) Version\/3.1.2 Safari\/525.20.1",
"published_on": null
}
}
POST/admin/comments.json
Tạo một Comment mới cho bài viết
Tạo một Comment mới với nội dung
POST /admin/comments.json
{
"comment": {
"body": "I like comments\nAnd I like posting them *RESTfully*.",
"author": "Your name",
"email": "[email protected]",
"ip": "107.20.160.121",
"blog_id": 241253187,
"article_id": 134645308
}
}
Xem kết quả
HTTP/1.1 201 Created
{
"comment": {
"id": 757536353,
"body": "I like comments\nAnd I like posting them *RESTfully*.",
"author": "Your name",
"email": "[email protected]",
"status": "pending",
"article_id": 134645308,
"blog_id": 241253187,
"created_on": "2015-09-02T14:54:02Z",
"modified_on": "2015-09-02T14:54:02Z",
"ip": "107.20.160.121",
"agent": null,
"published_on": "2015-09-02T14:54:02Z"
}
}
Cố gắng tạo một Comment không có nội dung, người viết, email sẽ trả về kết quả lỗi
POST /admin/comments.json
{
"comment": {
"article_id": 134645308
}
}
Xem kết quả
HTTP/1.1 422 Unprocessable Entity
{
"errors": {
"author": [
"can't be blank"
],
"body": [
"can't be blank"
],
"email": [
"is invalid"
]
}
}
PUT/admin/comments/118373535.json
Cập nhật một Comment trong một bài viết của Blog
Cập nhật nội dung cho Comment
PUT /admin/comments/#{id}.json
{
"comment": {
"id": 118373535,
"body": "You can even update through a web service.",
"author": "Your new name",
"email": "[email protected]",
"published_on": "2015-09-02T18:54:05.693Z"
}
}
Xem kết quả
HTTP/1.1 200 OK
{
"comment": {
"id": 118373535,
"body": "You can even update through a web service.",
"author": "Your new name",
"email": "[email protected]",
"status": "published",
"article_id": 134645308,
"blog_id": 241253187,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:54:05Z",
"ip": "127.0.0.1",
"agent": "Mozilla\/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit\/525.18 (KHTML, like Gecko) Version\/3.1.2 Safari\/525.20.1",
"published_on": "2015-09-02T14:54:05Z"
}
}
POST/admin/comments/653537639/spam.json
Đánh dấu Comment thành spam, giúp cải thiện chức năng chặn spam của hệ thống cũng như loại bỏ comment spam
HTTP/1.1 200 OK
{
"id": 653537639,
"body": "Hi author, I really _like_ what you're doing there.",
"author": "Soleone",
"email": "[email protected]",
"status": "spam",
"article_id": 134645308,
"blog_id": 241253187,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:54:03Z",
"ip": "127.0.0.1",
"agent": "Mozilla\/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit\/525.18 (KHTML, like Gecko) Version\/3.1.2 Safari\/525.20.1",
"published_on": "2015-09-02T14:54:03Z"
}
POST/admin/comments/653537639/not_spam.json
Đánh dấu Comment không phải spam, phục hồi lại comment bị đánh dấu spam về trạng thái xuất bản
HTTP/1.1 200 OK
{
"id": 653537639,
"body": "Hi author, I really _like_ what you're doing there.",
"author": "Soleone",
"email": "[email protected]",
"status": "published",
"article_id": 134645308,
"blog_id": 241253187,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:54:02Z",
"ip": "127.0.0.1",
"agent": "Mozilla\/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit\/525.18 (KHTML, like Gecko) Version\/3.1.2 Safari\/525.20.1",
"published_on": "2015-09-02T14:54:02Z"
}
POST/admin/comments/653537639/approve.json
Duyệt một Comment đang ở trạng thái chờ duyệt để xuất bản Comment trên website
HTTP/1.1 200 OK
{
"id": 653537639,
"body": "Hi author, I really _like_ what you're doing there.",
"author": "Soleone",
"email": "[email protected]",
"status": "published",
"article_id": 134645308,
"blog_id": 241253187,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:54:02Z",
"ip": "127.0.0.1",
"agent": "Mozilla\/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit\/525.18 (KHTML, like Gecko) Version\/3.1.2 Safari\/525.20.1",
"published_on": "2015-09-02T14:54:02Z"
}