Metafields cho phép bạn đưa các thông tin bổ sung vào một tài nguyên của Shop.
Metafields có thể được thêm vào:
- Blogs
- Custom Collections
- Customers
- Orders
- Pages
- Products
- Product Variants
Metafields có bốn thuộc tính bắt buộc là: key, namespace, value và value_type. Thuộc tính key để định danh cho metafield. Thuộc tính namespace giữ chức năng như một nơi chứa tập hợp các chức năng như một thùng chứa cho một tập hợp các siêu dữ liệu giúp phân biệt giữa siêu dữ liệu mà bạn đã tạo và siêu dữ liệu được tạo bởi những người khác với một không gian tên tương tự. Value là nội dung của metafield. Value_type mô tả trạng thái của giá trị, cho dù đó là 'string' hay 'integer'. Ngoài ra còn tồn tại một thuộc tính mô tả tùy chọn cung cấp thông tin bổ sung về siêu dữ liệu.
Metafield có nhiều trường hợp sử dụng khác nhau. Ví dụ: chúng có thể được sử dụng để mô tả thêm về các sản phẩm hoặc để lưu trữ một "teaser" hoặc "summary" cho một bài đăng trên blog. Bạn cũng có thể sử dụng metafield để chia sẻ thông tin giữa nhiều ứng dụng Sapo.
Bạn có thể làm gì với Metafield?
Sapo API cho phép bạn thực hiện các thao tác sau với tài nguyên Metafield. 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 Metafield
created_on |
{ "created_on" : "2012-03-13T16:09:54Z" }
Thời gian metafield được tạo. API trả về kết quả theo định dạng chuẩn ISO 8601. |
description |
{ "description" : "null" }
Thông tin thêm về metafield. Thuộc tính này là tùy chọn. |
id |
Số duy nhất định danh cho metafield. |
key |
Định danh cho metafield (tối đa 30 ký tự). |
namespace |
{ "namespace" : "inventory" }
Chứa một tập metadata. Namespace giúp phân biệt giữa các metadata được tạo bởi các đối tượng khác nhau (tối đa 20 ký tự). |
owner_id |
{ "owner_id" : 690933842 }
Số duy nhất định danh đơn vị sở hữu metafield. |
owner_resource |
{ "owner_resource" : "shop" }
Định danh cho tài nguyên sở hữu metafield. |
value |
Thông tin được lưu trữ dưới dạng metadata. |
value_type |
{ "value_type" : "integer" }
Xác định giá trị của thuộc tính value là định dạng 'string' hay 'integer'. |
modified_on |
{ "modified_on" : "2012-08-24T14:02:15Z" }
Thời gian metadfield được chỉnh sửa. API trả về kết quả theo định dạng chuẩn ISO 8601. |
Endpoints
GET/admin/metafields.json
Lấy các metafield của Shop
limit |
Số lượng kết quả (mặc định: 50) (tối đa: 250) |
since_id |
Giới hạn kết quả trả về có ID sau một ID xác định |
created_on_min |
Lấy ra các metafield được tạo sau thời gian này (định dạng: 2008-12-31 03:00) |
created_on_max |
Lấy ra các metafield được tạo trước thời gian này (định dạng: 2008-12-31 03:00) |
modified_on_min |
Lấy ra các metafield được cập nhật sau thời gian này (định dạng: 2008-12-31 03:00) |
modified_on_max |
Lấy ra các metafield được cập nhật trước thời gian này (định dạng: 2008-12-31 03:00) |
namepace |
Lấy ra các metafield với namespace xác định |
key |
Lấy ra các metafield với key xác định |
value_type |
- string - Lấy ra các metafield có giá trị thuộc tính value có định dạng string
- integer - Lấy ra các metafield có giá trị thuộc tính value có định dạng integer
|
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 các metafield của Shop
HTTP/1.1 200 OK
{
"metafields": [
{
"id": 721389482,
"namespace": "affiliates",
"key": "app_key",
"value": "app_key",
"value_type": "string",
"description": null,
"owner_id": 690933842,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:52:56Z",
"owner_resource": "shop"
}
]
}
Lấy các metafield có ID sau ID xác định
GET /admin/metafields.json?since_id=721389482
Xem kết quả
HTTP/1.1 200 OK
{
"metafields": [
{
"id": 996577841,
"namespace": "inventory",
"key": "warehouse",
"value": 25,
"value_type": "integer",
"description": null,
"owner_id": 690933842,
"created_on": "2015-09-02T14:54:55Z",
"modified_on": "2015-09-02T14:54:55Z",
"owner_resource": "shop"
}
]
}
GET/admin/products/632910392/metafields.json
Lấy các metafield của một sản phẩm
Lấy các metafield của một sản phẩm
HTTP/1.1 200 OK
{
"metafields": [
{
"id": 845366454,
"namespace": "translations",
"key": "title_fr",
"value": "produit",
"value_type": "string",
"description": "French product title",
"owner_id": 632910392,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:52:56Z",
"owner_resource": "product"
}
]
}
GET/admin/metafields.json
Lấy các metafield của một ảnh sản phẩm
Lấy các metafield của các ảnh của một sản phẩm
GET /admin/metafields.json?metafield[owner_id]=850703190&metafield[owner_resource]=product_image
Xem kết quả
HTTP/1.1 200 OK
{
"metafields": [
{
"id": 625663657,
"namespace": "translation",
"key": "title_fr",
"value": "tbn",
"value_type": "string",
"description": "French product image title",
"owner_id": 850703190,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:52:56Z",
"owner_resource": "product_image"
}
]
}
GET/admin/metafields/count.json
Lấy tổng số metafield của Shop
Lấy tổng số các metafield của Shop
HTTP/1.1 200 OK
{
"count": 1
}
GET/admin/products/632910392/metafields/count.json
Lấy tổng số metafield của một sản phẩm
Lấy tổng số metafield của một sản phẩm
GET /admin/products/#{id}/metafields/count.json
Xem kết quả
HTTP/1.1 200 OK
{
"count": 1
}
GET/admin/metafields/721389482.json
Lấy một metafield của gian hàng 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 metafield của store bằng ID. Một metafield của tài nguyên bất kỳ có thể tìm được bằng cách này.
HTTP/1.1 200 OK
{
"metafield": {
"id": 721389482,
"namespace": "affiliates",
"key": "app_key",
"value": "app_key",
"value_type": "string",
"description": null,
"owner_id": 690933842,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:52:56Z",
"owner_resource": "shop"
}
}
GET/admin/products/632910392/metafields/845366454.json
Lấy metafield của một sản phẩm bằng ID
Lấy metafield của một sản phẩm
GET /admin/products/#{id}/metafields/#{id}.json
Xem kết quả
HTTP/1.1 200 OK
{
"metafield": {
"id": 845366454,
"namespace": "translations",
"key": "title_fr",
"value": "produit",
"value_type": "string",
"description": "French product title",
"owner_id": 632910392,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:52:56Z",
"owner_resource": "product"
}
}
POST/admin/metafields.json
Tạo mới một metafield của Shop
Tạo mới một metafield cho Shop.
POST /admin/metafields.json
{
"metafield": {
"namespace": "inventory",
"key": "warehouse",
"value": 25,
"value_type": "integer"
}
}
Xem kết quả
HTTP/1.1 201 Created
{
"metafield": {
"id": 996577838,
"namespace": "inventory",
"key": "warehouse",
"value": 25,
"value_type": "integer",
"description": null,
"owner_id": 690933842,
"created_on": "2015-09-02T14:54:49Z",
"modified_on": "2015-09-02T14:54:49Z",
"owner_resource": "shop"
}
}
Cố gắng tạo một metafield mà không có key sẽ trả về lỗi
POST /admin/metafields.json
{
"metafield": {
"key": null
}
}
Xem kết quả
HTTP/1.1 422 Unprocessable Entity
{
"errors": {
"namespace": [
"can't be blank",
"is too short (minimum is 3 characters)"
],
"key": [
"can't be blank",
"is too short (minimum is 3 characters)"
],
"value": [
"can't be blank"
],
"value_type": [
"can't be blank",
"is not included in the list"
]
}
}
POST/admin/products/632910392/metafields.json
Tạo mới metafield cho một sản phẩm
Tạo mới metafield cho một sản phẩm.
POST /admin/products/#{id}/metafields.json
{
"metafield": {
"namespace": "inventory",
"key": "warehouse",
"value": 25,
"value_type": "integer"
}
}
Xem kết quả
HTTP/1.1 201 Created
{
"metafield": {
"id": 996577839,
"namespace": "inventory",
"key": "warehouse",
"value": 25,
"value_type": "integer",
"description": null,
"owner_id": 632910392,
"created_on": "2015-09-02T14:54:50Z",
"modified_on": "2015-09-02T14:54:50Z",
"owner_resource": "product"
}
}
PUT/admin/metafields/721389482.json
Cập nhật metafield của Shop
Cập nhật một metafield của Shop. Một metafield của một tài nguyên bất kỳ của shop đều có thể được cập nhật theo cách này. Không thể chỉnh sửa thông tin thuộc tính Namespace và key.
PUT /admin/metafields/#{id}.json
{
"metafield": {
"id": 721389482,
"value": "something new",
"value_type": "string"
}
}
Xem kết quả
HTTP/1.1 200 OK
{
"metafield": {
"id": 721389482,
"namespace": "affiliates",
"key": "app_key",
"value": "something new",
"value_type": "string",
"description": null,
"owner_id": 690933842,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:54:57Z",
"owner_resource": "shop"
}
}
PUT/admin/products/632910392/metafields/845366454.json
Cập nhật metafield của một sản phẩm
Cập nhật metafield của một sản phẩm. Giá trị thuộc tính Namespace và key không thể thay đổi.
PUT /admin/products/#{id}/metafields/#{id}.json
{
"metafield": {
"id": 845366454,
"value": "titre",
"value_type": "string"
}
}
Xem kết quả
HTTP/1.1 200 OK
{
"metafield": {
"id": 845366454,
"namespace": "translations",
"key": "title_fr",
"value": "titre",
"value_type": "string",
"description": "French product title",
"owner_id": 632910392,
"created_on": "2015-09-02T14:52:56Z",
"modified_on": "2015-09-02T14:54:52Z",
"owner_resource": "product"
}
}
DELETE/admin/metafields/721389482.json
Xóa một metafield của Shop
Xóa một metafield của Shop bằng ID. Một metafield của một tài nguyên bất kỳ đều có thể xóa theo cách này.
DELETE/admin/products/632910392/metafields/845366454.json
Xóa metafield của một sản phẩm
Xóa một metafield của sản phẩm.
DELETE /admin/products/#{id}/metafields/#{id}.json
Xem kết quả