287 lines
5.9 KiB
Markdown
287 lines
5.9 KiB
Markdown
# Tainacan Application Programming Interface
|
||
|
||
### Brief Description
|
||
|
||
A REST API for Tainacan Plugin. This API uses the Wordpress REST API.
|
||
|
||
### Routes and Endpoints
|
||
|
||
#### Collections
|
||
|
||
1. Route `wp-json/tainacan/v2/collections/(?P<collection_id>[\d]+)`
|
||
|
||
1.1. Endpoints supported:
|
||
|
||
1.1.1 GET (Fetch a collection)
|
||
|
||
1.1.2 DELETE (Delete or Trash a collection and all your dependencies)
|
||
|
||
```
|
||
To delete pass in body of a requisition the parameter is_permanently as true.
|
||
To only trash pass false.
|
||
```
|
||
|
||
1.1.3 PATCH or PUT (Update a collection)
|
||
|
||
Example of JSON passed in body for updating a collection:
|
||
|
||
```
|
||
{
|
||
"name": "string",
|
||
"description": "string",
|
||
...
|
||
}
|
||
```
|
||
|
||
2. Route `wp-json/tainacan/v2/collections`
|
||
|
||
2.1. Endpoints supported:
|
||
|
||
2.1.1 GET (Fetch all collections)
|
||
|
||
2.1.2 POST (Create a collection).
|
||
|
||
Example of JSON passed in body for creating a collection:
|
||
|
||
```javascript
|
||
{
|
||
"name": "string",
|
||
"description": "string",
|
||
"status": "string",
|
||
"order": "string",
|
||
"parent": "integer",
|
||
"slug": "string",
|
||
"default_orderby": "string",
|
||
"default_order": "string",
|
||
"columns": "string",
|
||
"default_view_mode": "string"
|
||
}
|
||
```
|
||
#### Items
|
||
|
||
1. Route `wp-json/tainacan/v2/collection/(?P<collection_id>[\d]+)/items`
|
||
|
||
1.1. Endpoints supported:
|
||
|
||
1.1.1 GET (Fetch all items from a collection)
|
||
|
||
1.1.2 POST (Create a item in a collection)
|
||
|
||
Example of JSON passed in body for creating a item:
|
||
|
||
```javascript
|
||
{
|
||
"title": "string",
|
||
"description": "string",
|
||
"status": "string",
|
||
}
|
||
```
|
||
|
||
2. Route `wp-json/tainacan/v2/items/(?P<item_id>[\d]+)`
|
||
|
||
2.1. Endpoints supported:
|
||
|
||
2.1.1 GET (Fetch a item)
|
||
|
||
2.1.2 DELETE (Delete or Trash a item and all your dependencies)
|
||
|
||
```
|
||
To delete pass in body of a requisition the parameter is_permanently as true.
|
||
To only trash pass false.
|
||
```
|
||
|
||
2.1.3 PATCH or PUT (Update a item)
|
||
|
||
Example of JSON passed in body for updating a item:
|
||
|
||
```
|
||
{
|
||
"title": "string",
|
||
"description": "string",
|
||
...
|
||
}
|
||
```
|
||
|
||
#### Field
|
||
|
||
1. Route `wp-json/tainacan/v2/collection/(?P<collection_id>[\d]+)/field`
|
||
|
||
1.1. Endpoints supported:
|
||
|
||
1.1.1 POST (Create a field in collection and all your items)
|
||
|
||
In body of requisition pass a JSON with the attributes of field like:
|
||
|
||
```javascript
|
||
{
|
||
"name": "string",
|
||
"description": "string",
|
||
"field_type": "string",
|
||
"order": "string",
|
||
"parent": "integer",
|
||
"required": "string",
|
||
"collection_key": "string",
|
||
"multiple": "string",
|
||
"cardinality": "string",
|
||
"privacy": "string",
|
||
"mask": "string",
|
||
"default_value": "string",
|
||
"field_type_options": "string",
|
||
}
|
||
```
|
||
|
||
1.1.2 GET (Fetch all collection field)
|
||
|
||
2. Route `wp-json/tainacan/v2/item/(?P<item_id>[\d]+)/field`
|
||
|
||
2.1. Endpoints supported:
|
||
|
||
2.1.1 POST (Set a value of item field)
|
||
|
||
In body of requisition pass a JSON with value e and id of field like:
|
||
|
||
```javascript
|
||
{
|
||
"field_id": "integer",
|
||
"values": "[any, type]"
|
||
}
|
||
```
|
||
|
||
2.1.2 GET (Fetch all item field, with your values)
|
||
|
||
#### Taxonomies
|
||
|
||
1. Route `wp-json/tainacan/v2/taxonomies`
|
||
|
||
1.1. Endpoints supported:
|
||
|
||
1.1.1. GET (Fetch all taxonomies)
|
||
|
||
1.1.2. POST (Create a taxonomy)
|
||
|
||
Example of JSON passed in body for creating a taxonomy:
|
||
|
||
```javascript
|
||
{
|
||
"name": "string",
|
||
"description": "string",
|
||
"status": "string",
|
||
"parent": "string",
|
||
"slug": "string",
|
||
"allow_insert": "string",
|
||
"collections_ids": "array"
|
||
}
|
||
```
|
||
|
||
2. Route `wp-json/tainacan/v2/taxonomies/(?P<taxonomy_id>[\d]+)`
|
||
|
||
2.1. Endpoints supported:
|
||
|
||
2.1.1 GET (Fetch a taxonomy)
|
||
|
||
2.1.2 DELETE (Delete or trash a taxonomy)
|
||
|
||
```
|
||
To delete pass in body of requisition the parameter is_permanently as true.
|
||
To only trash pass false.
|
||
```
|
||
|
||
2.1.3 PATCH or PUT (Update a taxonomy)
|
||
|
||
Example of JSON passed in body for updating a taxonomy:
|
||
|
||
```javascript
|
||
{
|
||
"name": "string",
|
||
"description": "string",
|
||
...
|
||
}
|
||
```
|
||
|
||
#### Filters
|
||
|
||
1. Route `wp-json/tainacan/v2/filters`
|
||
1.1 Endpoints supported:
|
||
|
||
1.1.1 POST (Create a filter)
|
||
|
||
Example of JSON passed in body for creating a filter:
|
||
|
||
```javascript
|
||
{
|
||
"collection_id": "int",
|
||
"field_id": "int",
|
||
"filter_type": "string",
|
||
"filter": {
|
||
"name": "string",
|
||
"description": "string",
|
||
...
|
||
}
|
||
}
|
||
```
|
||
|
||
1.1.2 GET (Fetch all filters)
|
||
|
||
2. Route `wp-json/tainacan/v2/filters/(?P<filter_id>[\d]+)`
|
||
|
||
2.1. Endpoints supported:
|
||
|
||
2.1.1 DELETE (Delete or trash a filter)
|
||
|
||
```
|
||
To delete pass in body of requisition the parameter is_permanently as true.
|
||
To only trash pass false.
|
||
```
|
||
|
||
2.1.2 PATCH or PUT (Update a filter)
|
||
|
||
Example of JSON passed in body for updating a filter:
|
||
|
||
```javascript
|
||
{
|
||
"name": "string",
|
||
...
|
||
}
|
||
```
|
||
|
||
2.1.3 GET (Fetch a filter)
|
||
|
||
#### Terms
|
||
|
||
1. Route `wp-json/tainacan/v2/taxonomy/(?P<taxonomy_id>[\d]+)/terms`
|
||
|
||
1.1 Endpoints supported:
|
||
|
||
1.1.1 POST (Create a term in a taxonomy)
|
||
|
||
Example of JSON passed in body for creating a term:
|
||
|
||
```javascript
|
||
{
|
||
"name": "string",
|
||
"user": "int",
|
||
...
|
||
}
|
||
```
|
||
|
||
1.1.2 GET (Fetch all tems of a taxonomy)
|
||
|
||
2. Route `wp-json/tainacan/v2/taxonomy/(?P<taxonomy_id>[\d]+)/terms/(?P<term_id>[\d]+)`
|
||
|
||
2.1 Endpoints supported:
|
||
|
||
2.1.1 GET (Fecth a term of a taxonomy)
|
||
|
||
2.1.2 PATCH or PUT (Update a term in a taxonomy)
|
||
|
||
Example of JSON passed in body for updating a term:
|
||
|
||
```javascript
|
||
{
|
||
"name": "string",
|
||
...
|
||
}
|
||
```
|
||
|
||
2.1.3 DELETE (Delete a term of a taxonoy)
|