> For the complete documentation index, see [llms.txt](https://docs.acpt.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.acpt.io/integrations/api-rest-field-integration.md).

# API Rest field integration

API Rest field integration

ACPT comes with custom integration with the standard [WordPress API Rest](https://developer.wordpress.org/rest-api/).

### Read operations

Suppose you have registered a custom meta field called `text` for native posts.

Call a `GET` request to the endpoint:

```url
/wp-json/wp/v2/posts
```

Inside the post objects, you'll find the node called `acpt`:

```json
{
   "id":2274,
   "date":"2022-02-22T12:46:10",
   "date_gmt":"2022-02-22T12:46:10",
   "guid":{
      "rendered":"http://localhost:83/?p=2274"
   },
   "modified":"2022-02-22T13:00:09",
   "modified_gmt":"2022-02-22T13:00:09",
   "slug":"ciao",
   "status":"publish",
   "type":"post",
   "link":"http://localhost:83/ciao/",
   "title":{
      "rendered":"Ciao"
   },
   "content":{
      "rendered":"\n<p>lorem ispum</p>\n",
      "protected":false
   },
   "excerpt":{
      "rendered":"<p>lorem ispum</p>\n",
      "protected":false
   },
   "author":1,
   "featured_media":0,
   "comment_status":"open",
   "ping_status":"open",
   "sticky":false,
   "template":"",
   "format":"standard",
   "meta":[

   ],
   "category":[
      47
   ],
   "post_tag":[

   ],
   "other":[

   ],
   "acpt":{
      "meta":[
         {
            "meta_box":"info",
            "meta_fields":[
               {
                  "name":"text",
                  "type":"Text",
                  "options":[

                  ],
                  "value":"",
                  "default":"",
                  "required":false,
                  "showInAdmin":false
               }
            ]
         }
      ]
   },
   "_links":{}
}
```

If you have installed [WooCommerce](https://woo.com/) try to call:

```url
/wp-json/wp/v2/product
```

in this case the `acpt` object contains also a key called `wc_product_data`, an array of field objects:

```json
[
    {
        "id": 2003,
        "date": "2022-01-21T14:50:29",
        "date_gmt": "2022-01-21T14:50:29",
        "guid": {
            "rendered": "http://localhost:83/?post_type=product&#038;p=2003"
        },
        "modified": "2022-02-23T11:28:30",
        "modified_gmt": "2022-02-23T11:28:30",
        "slug": "nuovo-prodotto",
        "status": "publish",
        "type": "product",
        "link": "http://localhost:83/product/nuovo-prodotto/",
        "title": {
            "rendered": "Nuovo prodotto"
        },
        "content": {
            "rendered": "<p>um has been the industry&#8217;s standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.um has been the industry&#8217;s standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.um has been the industry&#8217;s standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.</p>\n",
            "protected": false
        },
        "excerpt": {
            "rendered": "<p>um has been the industry&#8217;s standard dummy text ever since the 1500s, when an unknown printer took a galley of [&hellip;]</p>\n",
            "protected": false
        },
        "featured_media": 1142,
        "comment_status": "open",
        "ping_status": "closed",
        "template": "",
        "meta": [],
        "product_cat": [
            16
        ],
        "product_tag": [],
        "acpt": {
            "meta": [],
            "wc_product_data": [
                {
                    "name": "Product data",
                    "icon": {
                        "icon": "storefront",
                        "value": "\\e900"
                    },
                    "visibility": [
                        "show_if_simple",
                        "show_if_variable",
                        "show_if_grouped",
                        "show_if_external"
                    ],
                    "fields": [
                        {
                            "name": "field",
                            "type": "Text",
                            "options": [],
                            "value": "",
                            "default": "",
                            "required": false
                        }
                    ]
                }
            ]
        },
        "_links": {
            "self": [
                {
                    "href": "http://localhost:83/wp-json/wp/v2/product/2003"
                }
            ],
            "collection": [
                {
                    "href": "http://localhost:83/wp-json/wp/v2/product"
                }
            ],
            "about": [
                {
                    "href": "http://localhost:83/wp-json/wp/v2/types/product"
                }
            ],
            "replies": [
                {
                    "embeddable": true,
                    "href": "http://localhost:83/wp-json/wp/v2/comments?post=2003"
                }
            ],
            "wp:featuredmedia": [
                {
                    "embeddable": true,
                    "href": "http://localhost:83/wp-json/wp/v2/media/1142"
                }
            ],
            "wp:attachment": [
                {
                    "href": "http://localhost:83/wp-json/wp/v2/media?parent=2003"
                }
            ],
            "wp:term": [
                {
                    "taxonomy": "product_cat",
                    "embeddable": true,
                    "href": "http://localhost:83/wp-json/wp/v2/product_cat?post=2003"
                },
                {
                    "taxonomy": "product_tag",
                    "embeddable": true,
                    "href": "http://localhost:83/wp-json/wp/v2/product_tag?post=2003"
                }
            ],
            "curies": [
                {
                    "name": "wp",
                    "href": "https://api.w.org/{rel}",
                    "templated": true
                }
            ]
        }
    },
    {
        "id": 35,
        "date": "2020-06-03T16:42:23",
        "date_gmt": "2020-06-03T16:42:23",
        "guid": {
            "rendered": "http://localhost:83/?post_type=product&#038;p=35"
        },
        "modified": "2022-01-21T14:56:08",
        "modified_gmt": "2022-01-21T14:56:08",
        "slug": "prodotto-bello",
        "status": "publish",
        "type": "product",
        "link": "http://localhost:83/product/prodotto-bello/",
        "title": {
            "rendered": "Prodotto bello"
        },
        "content": {
            "rendered": "<p>Lorem ipsum</p>\n",
            "protected": false
        },
        "excerpt": {
            "rendered": "<p>Lorem ipsum</p>\n",
            "protected": false
        },
        "featured_media": 0,
        "comment_status": "open",
        "ping_status": "closed",
        "template": "",
        "meta": [],
        "product_cat": [
            16
        ],
        "product_tag": [],
        "acpt": {
            "meta": [],
            "wc_product_data": [
                {
                    "name": "Product data",
                    "icon": {
                        "icon": "storefront",
                        "value": "\\e900"
                    },
                    "visibility": [
                        "show_if_simple",
                        "show_if_variable",
                        "show_if_grouped",
                        "show_if_external"
                    ],
                    "fields": [
                        {
                            "name": "field",
                            "type": "Text",
                            "options": [],
                            "value": "",
                            "default": "",
                            "required": false
                        }
                    ]
                }
            ]
        },
        "_links": {
            "self": [
                {
                    "href": "http://localhost:83/wp-json/wp/v2/product/35"
                }
            ],
            "collection": [
                {
                    "href": "http://localhost:83/wp-json/wp/v2/product"
                }
            ],
            "about": [
                {
                    "href": "http://localhost:83/wp-json/wp/v2/types/product"
                }
            ],
            "replies": [
                {
                    "embeddable": true,
                    "href": "http://localhost:83/wp-json/wp/v2/comments?post=35"
                }
            ],
            "wp:attachment": [
                {
                    "href": "http://localhost:83/wp-json/wp/v2/media?parent=35"
                }
            ],
            "wp:term": [
                {
                    "taxonomy": "product_cat",
                    "embeddable": true,
                    "href": "http://localhost:83/wp-json/wp/v2/product_cat?post=35"
                },
                {
                    "taxonomy": "product_tag",
                    "embeddable": true,
                    "href": "http://localhost:83/wp-json/wp/v2/product_tag?post=35"
                }
            ],
            "curies": [
                {
                    "name": "wp",
                    "href": "https://api.w.org/{rel}",
                    "templated": true
                }
            ]
        }
    }
]
```

### Write operations

To write field data via API, make a `POST` request to the same endpoint:

`/wp-json/wp/v2/posts`

You have to add `acpt` node to the usual JSON payload.

Suppose you want to create a new post with the title "Lorem ipsum":

```json
{
   "title": "Lorem ipsum",
   "acpt": {
      "meta": [
         {
            "box": "info",
            "field": "text",
            "value": "This is the value"
         }
      ]
   }
}
```

Please note that some fields require the value to be an array.

For example, suppose you have a select multiple field called `select` within a meta box called `info`:

```json
{
   "title": "Lorem ipsum",
   "acpt": {
      "meta": [
         {
            "box": "info",
            "field": "select",
            "value": [
               "This is the value",
               "This is another value",
               "This is the third value",
            ]
         }
      ]
   }
}
```
