Each free account allows you to have a total of 100 database objects. Deleted items do not count towards your total. If you would like more, just contact us.
Authentication uses token/bearer auth. To generage a new API token, simply log into the web app and create a new key in the API Keys section. Then send it in your request headers in the form:
Authorization: Bearer YOUR_API_KEY
Test route. Get the current server time as Unix epoch (or Unix time or POSIX time or Unix timestamp). Epoch is the number of seconds that have elapsed since January 1, 1970.
https://crudapi.co.uk/api/v1/probe
curl -X GET https://crudapi.co.uk/api/v1/probe -H
"Content-Type: application/json" -H "Authorization:
Bearer YOUR_API_KEY"
Status: 200 OK
{ "time":1636111123.355878 }
Name | Type | Description |
---|---|---|
time | number | Server time in UTC. Epoch in seconds. |
Create new data objects with a specific {data_type}. {data_type} can be anything you wish (except probe). Data objects are always sent as a list of objects.
https://crudapi.co.uk/api/v1/{data_type}
curl -X POST https://crudapi.co.uk/api/v1/task -H
"Content-Type: application/json" -H "Authorization:
Bearer YOUR_API_KEY" -d '[{"title": "My first task",
"completed": false}]'
Status: 201 OK
{ "items": [ { "_created": 1636112613.207888, "_data_type": "task", "_is_deleted": false, "_modified": 1636112613.207898, "_self_link": "https://crudapi.co.uk/api/v1/task/c54ff081-f858-4e5b-8041-4c22f153c926", "_user": "baeb6fd4-f196-485f-9130-d5455ad16074", "_uuid": "c54ff081-f858-4e5b-8041-4c22f153c926", "completed": false, "title": "My first task" } ] }
Note: all server fields begin with _ and are not user editable. They can be modified by the server.
If you reach your allowance you will receive the following and a 413 status code. Request an allowance increase or delete some objects.
{ "allowance": 100, "error": "data limit reached", "items": 100 }
Name | Type | Description |
---|---|---|
_created | number | Epoch in seconds the object was created (UTC). |
_data_type | string | Data type specified when creating the object. |
_is_deleted | boolean | Server side flag. |
_modified | number | Epoch in seconds the object was last modified (UTC). |
_self_link | string | URL for this object. You can use this to update and delete the object. |
_user | string | Your unique user UUID (Universally Unique ID). |
_uuid | string | Data objects UUID (Universally Unique ID). |
completed | boolean | User specified data field sent to the server. |
title | string | User specified data field sent to the server. |
Get all data objects with a specific {data_type}. Data objects are retruned as a list.
https://crudapi.co.uk/api/v1/{data_type}
curl -X GET https://crudapi.co.uk/api/v1/task -H
"Content-Type: application/json" -H "Authorization:
Bearer YOUR_API_KEY"'
Name | Type | In | Description |
---|---|---|---|
cursor | string | query | Optional pagination cursor. |
Status: 200 OK
{ "cursor": null, "items":[ { "_created": 1636112613.207888, "_data_type": "task", "_is_deleted": false, "_modified": 1636112613.207898, "_self_link": "https://crudapi.co.uk/api/v1/task/c54ff081-f858-4e5b-8041-4c22f153c926", "_user": "baeb6fd4-f196-485f-9130-d5455ad16074", "_uuid": "c54ff081-f858-4e5b-8041-4c22f153c926", "completed": false, "title": "My first task" } ], "next_page": null }
Note: all server fields begin with _ and are not user editable. They can be modified by the server.
Name | Type | Description |
---|---|---|
cursor | string or null | Pagination cursor. Get items returns a maximum of 100 items. If there are more than 100 items a cursor string will be added. This can be used to retrieve more items. |
next_page | string or null | Convenience parameter for fetching the next page of data. Null is no more items to fetch. |
_created | number | Epoch in seconds the object was created (UTC). |
_data_type | string | Data type specified when creating the object. |
_is_deleted | boolean | Server side flag. |
_modified | number | Epoch in seconds the object was last modified (UTC). |
_self_link | string | URL for this object. You can use this to update and delete the object. |
_user | string | Your unique user UUID (Universally Unique ID). |
_uuid | string | Data objects UUID (Universally Unique ID). |
completed | boolean | User specified data field sent to the server. |
title | string | User specified data field sent to the server. |
Update data objects. Data objects are always sent as a list of objects. Only the _uuid and data fields you wish to update are required, however you can send all data fields if you wish.
https://crudapi.co.uk/api/v1/{data_type}
curl -X PUT https://crudapi.co.uk/api/v1/task -H
"Content-Type: application/json" -H "Authorization:
Bearer YOUR_API_KEY" -d '[{"_uuid":
"c54ff081-f858-4e5b-8041-4c22f153c926", "completed":
true}]'
Status: 200 OK
{ "items": [ { "_created": 1636112613.207888, "_data_type": "task", "_is_deleted": false, "_modified": 1636116434.934499, "_self_link": "https://crudapi.co.uk/api/v1/task/c54ff081-f858-4e5b-8041-4c22f153c926", "_user": "baeb6fd4-f196-485f-9130-d5455ad16074", "_uuid": "c54ff081-f858-4e5b-8041-4c22f153c926", "completed": true, "title": "My first task" } ] }
Note: all server fields begin with _ and are not user editable. They can be modified by the server.
Name | Type | Description |
---|---|---|
_created | number | Epoch in seconds the object was created (UTC). |
_data_type | string | Data type specified when creating the object. |
_is_deleted | boolean | Server side flag. |
_modified | number | Epoch in seconds the object was last modified (UTC). |
_self_link | string | URL for this object. You can use this to update and delete the object. |
_user | string | Your unique user UUID (Universally Unique ID). |
_uuid | string | Data objects UUID (Universally Unique ID). |
completed | boolean | User specified data field sent to the server. |
title | string | User specified data field sent to the server. |
Delete data objects. Data objects are always sent as a list of objects. Only the _uuid is required, however you can send the entire data object if you wish.
https://crudapi.co.uk/api/v1/{data_type}
curl -X DELETE https://crudapi.co.uk/api/v1/task -H
"Content-Type: application/json" -H "Authorization:
Bearer YOUR_API_KEY" -d '[{"_uuid":
"c54ff081-f858-4e5b-8041-4c22f153c926"}]'
Status: 200 OK
{ "items": [ { "_created":1636112613.207888, "_data_type":"task", "_is_deleted":true, "_modified":1636116434.934499, "_self_link":"https://crudapi.co.uk/api/v1/task/c54ff081-f858-4e5b-8041-4c22f153c926", "_user":"baeb6fd4-f196-485f-9130-d5455ad16074", "_uuid":"c54ff081-f858-4e5b-8041-4c22f153c926", "completed":true, "title":"My edited task" } ] }
Note: all server fields begin with _ and are not user editable. They can be modified by the server.
Name | Type | Description |
---|---|---|
_created | number | Epoch in seconds the object was created (UTC). |
_data_type | string | Data type specified when creating the object. |
_is_deleted | boolean | Server side flag. |
_modified | number | Epoch in seconds the object was last modified (UTC). |
_self_link | string | URL for this object. You can use this to update and delete the object. |
_user | string | Your unique user UUID (Universally Unique ID). |
_uuid | string | Data objects UUID (Universally Unique ID). |
completed | boolean | User specified data field sent to the server. |
title | string | User specified data field sent to the server. |
Get a specific data object by {data_type} and {uuid}. After creating an object, this is the objects _self_link. The data object is returned as a single JSON object.
https://crudapi.co.uk/api/v1/{data_type}/{uuid}
curl -X GET
https://crudapi.co.uk/api/v1/task/c54ff081-f858-4e5b-8041-4c22f153c926
-H "Content-Type: application/json" -H "Authorization:
Bearer YOUR_API_KEY"
Status: 200 OK
{ "_created": 1636112613.207888, "_data_type": "task", "_is_deleted": false, "_modified": 1636116434.934499, "_self_link": "https://crudapi.co.uk/api/v1/task/c54ff081-f858-4e5b-8041-4c22f153c926", "_user": "baeb6fd4-f196-485f-9130-d5455ad16074", "_uuid": "c54ff081-f858-4e5b-8041-4c22f153c926", "completed": true, "title": "My first task" }
Note: all server fields begin with _ and are not user editable. They can be modified by the server.
Name | Type | Description |
---|---|---|
_created | number | Epoch in seconds the object was created (UTC). |
_data_type | string | Data type specified when creating the object. |
_is_deleted | boolean | Server side flag. |
_modified | number | Epoch in seconds the object was last modified (UTC). |
_self_link | string | URL for this object. You can use this to update and delete the object. |
_user | string | Your unique user UUID (Universally Unique ID). |
_uuid | string | Data objects UUID (Universally Unique ID). |
completed | boolean | User specified data field sent to the server. |
title | string | User specified data field sent to the server. |
Update a specific data object by {data_type} and {uuid}. After creating an object, this is the objects _self_link. The data object is sent and returned as a single JSON object.
https://crudapi.co.uk/api/v1/{data_type}/{uuid}
curl -X PUT
https://crudapi.co.uk/api/v1/task/c54ff081-f858-4e5b-8041-4c22f153c926
-H "Content-Type: application/json" -H "Authorization:
Bearer YOUR_API_KEY" -d '{"title": "My edited task"}'
Status: 200 OK
{ "_created": 1636112613.207888, "_data_type": "task", "_is_deleted": false, "_modified": 1636116434.934499, "_self_link": "https://crudapi.co.uk/api/v1/task/c54ff081-f858-4e5b-8041-4c22f153c926", "_user": "baeb6fd4-f196-485f-9130-d5455ad16074", "_uuid": "c54ff081-f858-4e5b-8041-4c22f153c926", "completed": true, "title": "My edited task" }
Note: all server fields begin with _ and are not user editable. They can be modified by the server.
Name | Type | Description |
---|---|---|
_created | number | Epoch in seconds the object was created (UTC). |
_data_type | string | Data type specified when creating the object. |
_is_deleted | boolean | Server side flag. |
_modified | number | Epoch in seconds the object was last modified (UTC). |
_self_link | string | URL for this object. You can use this to update and delete the object. |
_user | string | Your unique user UUID (Universally Unique ID). |
_uuid | string | Data objects UUID (Universally Unique ID). |
completed | boolean | User specified data field sent to the server. |
title | string | User specified data field sent to the server. |
Delete a specific data object by {data_type} and {uuid}. After creating an object, this is the objects _self_link. The data object is returned as a single JSON object.
https://crudapi.co.uk/api/v1/{data_type}
curl -X DELETE
https://crudapi.co.uk/api/v1/task/c54ff081-f858-4e5b-8041-4c22f153c926
-H "Content-Type: application/json" -H "Authorization:
Bearer YOUR_API_KEY"
Status: 200 OK
{ "_created": 1636112613.207888, "_data_type": "task", "_is_deleted": true, "_modified": 1636116434.934499, "_self_link": "https://crudapi.co.uk/api/v1/task/c54ff081-f858-4e5b-8041-4c22f153c926", "_user": "baeb6fd4-f196-485f-9130-d5455ad16074", "_uuid": "c54ff081-f858-4e5b-8041-4c22f153c926", "completed": true, "title": "My edited task" }
Note: all server fields begin with _ and are not user editable. They can be modified by the server. Once deleted an object cannot be recovered.
Name | Type | Description |
---|---|---|
_created | number | Epoch in seconds the object was created (UTC). |
_data_type | string | Data type specified when creating the object. |
_is_deleted | boolean | Server side flag. |
_modified | number | Epoch in seconds the object was last modified (UTC). |
_self_link | string | URL for this object. You can use this to update and delete the object. |
_user | string | Your unique user UUID (Universally Unique ID). |
_uuid | string | Data objects UUID (Universally Unique ID). |
completed | boolean | User specified data field sent to the server. |
title | string | User specified data field sent to the server. |
“Everything should be made as simple as possible, but not simpler.” - Albert Einstein