Introduction
This documentation aims to provide all the information you need to work with our API.
Base URL
https://cms.botble.com
Authenticating requests
This API is not authenticated.
Authentication
Register
Example request:
curl -X POST \
"https://cms.botble.com/api/v1/register" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1" \
-H "Content-Type: application/json" \
-d '{"first_name":"harum","last_name":"nostrum","email":"odit","password":"saepe","phone":"placeat","password_confirmation":"maiores"}'
const url = new URL(
"https://cms.botble.com/api/v1/register"
);
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"first_name": "harum",
"last_name": "nostrum",
"email": "odit",
"password": "saepe",
"phone": "placeat",
"password_confirmation": "maiores"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": null,
"message": "Registered successfully! We emailed you to verify your account!"
}
Example response (422):
{
"message": "The given data was invalid.",
"errors": {
"first_name": [
"The first name field is required."
],
"last_name": [
"The last name field is required."
],
"email": [
"The email field is required."
],
"password": [
"The password field is required."
]
}
}
Received response:
Request failed with error:
Login
Example request:
curl -X POST \
"https://cms.botble.com/api/v1/login" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1" \
-H "Content-Type: application/json" \
-d '{"email":"[email protected]","password":"provident","login":"qui"}'
const url = new URL(
"https://cms.botble.com/api/v1/login"
);
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"email": "[email protected]",
"password": "provident",
"login": "qui"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"error": false,
"data": {
"token": "1|aF5s7p3xxx1lVL8hkSrPN72m4wPVpTvTs..."
},
"message": null
}
Received response:
Request failed with error:
Forgot password
Send a reset link to the given user.
Example request:
curl -X POST \
"https://cms.botble.com/api/v1/password/forgot" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1" \
-H "Content-Type: application/json" \
-d '{"email":"totam"}'
const url = new URL(
"https://cms.botble.com/api/v1/password/forgot"
);
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"email": "totam"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Resend email verification
Resend the email verification notification.
Example request:
curl -X POST \
"https://cms.botble.com/api/v1/resend-verify-account-email" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1" \
-H "Content-Type: application/json" \
-d '{"email":"id"}'
const url = new URL(
"https://cms.botble.com/api/v1/resend-verify-account-email"
);
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"email": "id"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Logout
requires authentication
Example request:
curl -X GET \
-G "https://cms.botble.com/api/v1/logout" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1"
const url = new URL(
"https://cms.botble.com/api/v1/logout"
);
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (302):
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<meta http-equiv="refresh" content="0;url='http://cms.botble.com/admin/login'" />
<title>Redirecting to http://cms.botble.com/admin/login</title>
</head>
<body>
Redirecting to <a href="http://cms.botble.com/admin/login">http://cms.botble.com/admin/login</a>.
</body>
</html>
Received response:
Request failed with error:
Blog
Search post
Example request:
curl -X GET \
-G "https://cms.botble.com/api/v1/search" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1" \
-H "Content-Type: application/json" \
-d '{"q":"possimus"}'
const url = new URL(
"https://cms.botble.com/api/v1/search"
);
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"q": "possimus"
}
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Example response (200):
{
"error": true,
"data": null,
"message": "No results found, please try with different keywords."
}
Received response:
Request failed with error:
List posts
Example request:
curl -X GET \
-G "https://cms.botble.com/api/v1/posts" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1"
const url = new URL(
"https://cms.botble.com/api/v1/posts"
);
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
{
"data": [
{
"id": 1,
"name": "The Top 2020 Handbag Trends to Know",
"slug": "the-top-2020-handbag-trends-to-know",
"description": "Voluptatum ut dignissimos qui cupiditate illo. Saepe veritatis quod ea ab ex enim. Inventore optio qui ut laborum magnam labore incidunt.",
"image": "https:\/\/cdn.botble.com\/cms\/storage\/news\/1.jpg",
"categories": [
{
"id": 1,
"name": "Design",
"slug": "design",
"description": "Autem cumque et sint cum repellat. Ea veritatis quo odit est accusamus. Qui laborum facere voluptatum. Officia aliquid minima consequuntur doloremque non modi."
},
{
"id": 5,
"name": "Travel Tips",
"slug": "travel-tips",
"description": "Est sed consequatur veritatis dolorem quia ut fugit. Minus dolor iste fugiat molestias cupiditate ut eos debitis. Ea qui velit iure doloribus aliquid quasi."
}
],
"tags": [
{
"id": 1,
"name": "General",
"slug": "general",
"description": ""
},
{
"id": 2,
"name": "Design",
"slug": "design",
"description": ""
},
{
"id": 3,
"name": "Fashion",
"slug": "fashion",
"description": ""
},
{
"id": 4,
"name": "Branding",
"slug": "branding",
"description": ""
},
{
"id": 5,
"name": "Modern",
"slug": "modern",
"description": ""
}
],
"created_at": "2022-09-15T10:33:19.000000Z",
"updated_at": "2022-09-15T10:33:19.000000Z"
},
{
"id": 2,
"name": "Top Search Engine Optimization Strategies!",
"slug": "top-search-engine-optimization-strategies",
"description": "Mollitia minima temporibus ex rerum. Provident explicabo quos occaecati ratione veniam. Explicabo minima sunt labore dicta soluta qui incidunt. Molestias illo consequatur atque qui ipsa repellendus.",
"image": "https:\/\/cdn.botble.com\/cms\/storage\/news\/2.jpg",
"categories": [
{
"id": 4,
"name": "Healthy",
"slug": "healthy",
"description": "Sed sed hic error nostrum nihil est. Nostrum et autem consequatur laboriosam quas quo. Veniam quod accusamus quidem et laboriosam. Placeat est aut dignissimos sunt."
},
{
"id": 6,
"name": "Hotel",
"slug": "hotel",
"description": "Voluptas tempore ipsum minus voluptas. Ipsam molestias dicta laudantium ipsam omnis. Ut molestiae nostrum atque quae ea enim est."
}
],
"tags": [
{
"id": 1,
"name": "General",
"slug": "general",
"description": ""
},
{
"id": 2,
"name": "Design",
"slug": "design",
"description": ""
},
{
"id": 3,
"name": "Fashion",
"slug": "fashion",
"description": ""
},
{
"id": 4,
"name": "Branding",
"slug": "branding",
"description": ""
},
{
"id": 5,
"name": "Modern",
"slug": "modern",
"description": ""
}
],
"created_at": "2022-09-15T10:33:19.000000Z",
"updated_at": "2022-09-15T10:33:19.000000Z"
},
{
"id": 3,
"name": "Which Company Would You Choose?",
"slug": "which-company-would-you-choose",
"description": "Totam qui quo non ea id ea quia. Quis harum odit asperiores dolorem laboriosam eos consequatur voluptas. Omnis eaque molestias rerum id est.",
"image": "https:\/\/cdn.botble.com\/cms\/storage\/news\/3.jpg",
"categories": [
{
"id": 1,
"name": "Design",
"slug": "design",
"description": "Autem cumque et sint cum repellat. Ea veritatis quo odit est accusamus. Qui laborum facere voluptatum. Officia aliquid minima consequuntur doloremque non modi."
},
{
"id": 5,
"name": "Travel Tips",
"slug": "travel-tips",
"description": "Est sed consequatur veritatis dolorem quia ut fugit. Minus dolor iste fugiat molestias cupiditate ut eos debitis. Ea qui velit iure doloribus aliquid quasi."
}
],
"tags": [
{
"id": 1,
"name": "General",
"slug": "general",
"description": ""
},
{
"id": 2,
"name": "Design",
"slug": "design",
"description": ""
},
{
"id": 3,
"name": "Fashion",
"slug": "fashion",
"description": ""
},
{
"id": 4,
"name": "Branding",
"slug": "branding",
"description": ""
},
{
"id": 5,
"name": "Modern",
"slug": "modern",
"description": ""
}
],
"created_at": "2022-09-15T10:33:19.000000Z",
"updated_at": "2022-09-15T10:33:19.000000Z"
},
{
"id": 4,
"name": "Used Car Dealer Sales Tricks Exposed",
"slug": "used-car-dealer-sales-tricks-exposed",
"description": "Soluta nulla animi accusantium repellat. Labore eveniet corporis rerum magnam quam aut voluptas non. Tempora sapiente reiciendis atque quia placeat et sit molestias.",
"image": "https:\/\/cdn.botble.com\/cms\/storage\/news\/4.jpg",
"categories": [
{
"id": 1,
"name": "Design",
"slug": "design",
"description": "Autem cumque et sint cum repellat. Ea veritatis quo odit est accusamus. Qui laborum facere voluptatum. Officia aliquid minima consequuntur doloremque non modi."
},
{
"id": 5,
"name": "Travel Tips",
"slug": "travel-tips",
"description": "Est sed consequatur veritatis dolorem quia ut fugit. Minus dolor iste fugiat molestias cupiditate ut eos debitis. Ea qui velit iure doloribus aliquid quasi."
}
],
"tags": [
{
"id": 1,
"name": "General",
"slug": "general",
"description": ""
},
{
"id": 2,
"name": "Design",
"slug": "design",
"description": ""
},
{
"id": 3,
"name": "Fashion",
"slug": "fashion",
"description": ""
},
{
"id": 4,
"name": "Branding",
"slug": "branding",
"description": ""
},
{
"id": 5,
"name": "Modern",
"slug": "modern",
"description": ""
}
],
"created_at": "2022-09-15T10:33:19.000000Z",
"updated_at": "2022-09-15T10:33:19.000000Z"
},
{
"id": 5,
"name": "20 Ways To Sell Your Product Faster",
"slug": "20-ways-to-sell-your-product-faster",
"description": "Et itaque iste tempora quasi. Non recusandae nisi neque a molestiae tempora sint. Eos qui voluptas nobis labore. Aut a architecto enim fugit repellat. Est at aut magnam.",
"image": "https:\/\/cdn.botble.com\/cms\/storage\/news\/5.jpg",
"categories": [
{
"id": 2,
"name": "Lifestyle",
"slug": "lifestyle",
"description": "Esse vero alias optio dicta et voluptate. Suscipit rerum magni ipsam consequuntur. Molestias nemo voluptas odit tenetur."
},
{
"id": 6,
"name": "Hotel",
"slug": "hotel",
"description": "Voluptas tempore ipsum minus voluptas. Ipsam molestias dicta laudantium ipsam omnis. Ut molestiae nostrum atque quae ea enim est."
}
],
"tags": [
{
"id": 1,
"name": "General",
"slug": "general",
"description": ""
},
{
"id": 2,
"name": "Design",
"slug": "design",
"description": ""
},
{
"id": 3,
"name": "Fashion",
"slug": "fashion",
"description": ""
},
{
"id": 4,
"name": "Branding",
"slug": "branding",
"description": ""
},
{
"id": 5,
"name": "Modern",
"slug": "modern",
"description": ""
}
],
"created_at": "2022-09-15T10:33:19.000000Z",
"updated_at": "2022-09-15T10:33:19.000000Z"
},
{
"id": 6,
"name": "The Secrets Of Rich And Famous Writers",
"slug": "the-secrets-of-rich-and-famous-writers",
"description": "Placeat omnis unde esse unde. Explicabo itaque voluptate provident aliquam consequatur omnis ullam ipsa.",
"image": "https:\/\/cdn.botble.com\/cms\/storage\/news\/6.jpg",
"categories": [
{
"id": 4,
"name": "Healthy",
"slug": "healthy",
"description": "Sed sed hic error nostrum nihil est. Nostrum et autem consequatur laboriosam quas quo. Veniam quod accusamus quidem et laboriosam. Placeat est aut dignissimos sunt."
},
{
"id": 6,
"name": "Hotel",
"slug": "hotel",
"description": "Voluptas tempore ipsum minus voluptas. Ipsam molestias dicta laudantium ipsam omnis. Ut molestiae nostrum atque quae ea enim est."
}
],
"tags": [
{
"id": 1,
"name": "General",
"slug": "general",
"description": ""
},
{
"id": 2,
"name": "Design",
"slug": "design",
"description": ""
},
{
"id": 3,
"name": "Fashion",
"slug": "fashion",
"description": ""
},
{
"id": 4,
"name": "Branding",
"slug": "branding",
"description": ""
},
{
"id": 5,
"name": "Modern",
"slug": "modern",
"description": ""
}
],
"created_at": "2022-09-15T10:33:19.000000Z",
"updated_at": "2022-09-27T04:14:11.000000Z"
},
{
"id": 7,
"name": "Imagine Losing 20 Pounds In 14 Days!",
"slug": "imagine-losing-20-pounds-in-14-days",
"description": "Consequatur error nobis velit pariatur et. Temporibus corporis rerum sunt quos mollitia et. Temporibus fuga ut est dicta.",
"image": "https:\/\/cdn.botble.com\/cms\/storage\/news\/7.jpg",
"categories": [
{
"id": 3,
"name": "Travel Tips",
"slug": "travel-tips",
"description": "Quam exercitationem sapiente vitae pariatur consectetur numquam. Nulla repudiandae et necessitatibus aliquid."
},
{
"id": 6,
"name": "Hotel",
"slug": "hotel",
"description": "Voluptas tempore ipsum minus voluptas. Ipsam molestias dicta laudantium ipsam omnis. Ut molestiae nostrum atque quae ea enim est."
}
],
"tags": [
{
"id": 1,
"name": "General",
"slug": "general",
"description": ""
},
{
"id": 2,
"name": "Design",
"slug": "design",
"description": ""
},
{
"id": 3,
"name": "Fashion",
"slug": "fashion",
"description": ""
},
{
"id": 4,
"name": "Branding",
"slug": "branding",
"description": ""
},
{
"id": 5,
"name": "Modern",
"slug": "modern",
"description": ""
}
],
"created_at": "2022-09-15T10:33:19.000000Z",
"updated_at": "2022-09-15T10:33:19.000000Z"
},
{
"id": 8,
"name": "Are You Still Using That Slow, Old Typewriter?",
"slug": "are-you-still-using-that-slow-old-typewriter",
"description": "Sed delectus et aut sit. Veniam quos molestiae quia qui. Maiores sapiente aut sit delectus. Reprehenderit et voluptates adipisci animi aut est.",
"image": "https:\/\/cdn.botble.com\/cms\/storage\/news\/8.jpg",
"categories": [
{
"id": 4,
"name": "Healthy",
"slug": "healthy",
"description": "Sed sed hic error nostrum nihil est. Nostrum et autem consequatur laboriosam quas quo. Veniam quod accusamus quidem et laboriosam. Placeat est aut dignissimos sunt."
},
{
"id": 5,
"name": "Travel Tips",
"slug": "travel-tips",
"description": "Est sed consequatur veritatis dolorem quia ut fugit. Minus dolor iste fugiat molestias cupiditate ut eos debitis. Ea qui velit iure doloribus aliquid quasi."
}
],
"tags": [
{
"id": 1,
"name": "General",
"slug": "general",
"description": ""
},
{
"id": 2,
"name": "Design",
"slug": "design",
"description": ""
},
{
"id": 3,
"name": "Fashion",
"slug": "fashion",
"description": ""
},
{
"id": 4,
"name": "Branding",
"slug": "branding",
"description": ""
},
{
"id": 5,
"name": "Modern",
"slug": "modern",
"description": ""
}
],
"created_at": "2022-09-15T10:33:19.000000Z",
"updated_at": "2022-09-15T10:33:19.000000Z"
},
{
"id": 9,
"name": "A Skin Cream Thatβs Proven To Work",
"slug": "a-skin-cream-thats-proven-to-work",
"description": "Facere sint hic est sit perferendis culpa et culpa. Voluptas pariatur qui ex placeat aliquam eos quia. Quis animi et aut nostrum voluptatem dicta. Veritatis adipisci rerum rerum dolores distinctio.",
"image": "https:\/\/cdn.botble.com\/cms\/storage\/news\/9.jpg",
"categories": [
{
"id": 2,
"name": "Lifestyle",
"slug": "lifestyle",
"description": "Esse vero alias optio dicta et voluptate. Suscipit rerum magni ipsam consequuntur. Molestias nemo voluptas odit tenetur."
},
{
"id": 7,
"name": "Nature",
"slug": "nature",
"description": "Quibusdam possimus laborum necessitatibus voluptatem voluptatem sint maiores. Dolor repellat dolor impedit suscipit asperiores et. Illo sit eos error ullam quam expedita eum dolor."
}
],
"tags": [
{
"id": 1,
"name": "General",
"slug": "general",
"description": ""
},
{
"id": 2,
"name": "Design",
"slug": "design",
"description": ""
},
{
"id": 3,
"name": "Fashion",
"slug": "fashion",
"description": ""
},
{
"id": 4,
"name": "Branding",
"slug": "branding",
"description": ""
},
{
"id": 5,
"name": "Modern",
"slug": "modern",
"description": ""
}
],
"created_at": "2022-09-15T10:33:19.000000Z",
"updated_at": "2022-09-15T10:33:19.000000Z"
},
{
"id": 10,
"name": "10 Reasons To Start Your Own, Profitable Website!",
"slug": "10-reasons-to-start-your-own-profitable-website",
"description": "In esse voluptatem molestiae id. Optio illo ad ullam quia nesciunt voluptas. Quaerat ea et repudiandae nam et placeat.",
"image": "https:\/\/cdn.botble.com\/cms\/storage\/news\/10.jpg",
"categories": [
{
"id": 2,
"name": "Lifestyle",
"slug": "lifestyle",
"description": "Esse vero alias optio dicta et voluptate. Suscipit rerum magni ipsam consequuntur. Molestias nemo voluptas odit tenetur."
},
{
"id": 5,
"name": "Travel Tips",
"slug": "travel-tips",
"description": "Est sed consequatur veritatis dolorem quia ut fugit. Minus dolor iste fugiat molestias cupiditate ut eos debitis. Ea qui velit iure doloribus aliquid quasi."
}
],
"tags": [
{
"id": 1,
"name": "General",
"slug": "general",
"description": ""
},
{
"id": 2,
"name": "Design",
"slug": "design",
"description": ""
},
{
"id": 3,
"name": "Fashion",
"slug": "fashion",
"description": ""
},
{
"id": 4,
"name": "Branding",
"slug": "branding",
"description": ""
},
{
"id": 5,
"name": "Modern",
"slug": "modern",
"description": ""
}
],
"created_at": "2022-09-15T10:33:19.000000Z",
"updated_at": "2022-09-15T10:33:19.000000Z"
}
],
"links": {
"first": "http:\/\/localhost\/api\/v1\/posts?page=1",
"last": "http:\/\/localhost\/api\/v1\/posts?page=2",
"prev": null,
"next": "http:\/\/localhost\/api\/v1\/posts?page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 2,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "http:\/\/localhost\/api\/v1\/posts?page=1",
"label": "1",
"active": true
},
{
"url": "http:\/\/localhost\/api\/v1\/posts?page=2",
"label": "2",
"active": false
},
{
"url": "http:\/\/localhost\/api\/v1\/posts?page=2",
"label": "Next »",
"active": false
}
],
"path": "http:\/\/localhost\/api\/v1\/posts",
"per_page": 10,
"to": 10,
"total": 16
},
"error": false,
"message": null
}
Received response:
Request failed with error:
List categories
Example request:
curl -X GET \
-G "https://cms.botble.com/api/v1/categories" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1"
const url = new URL(
"https://cms.botble.com/api/v1/categories"
);
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
{
"data": [
{
"id": 1,
"name": "Design",
"slug": "design",
"description": "Autem cumque et sint cum repellat. Ea veritatis quo odit est accusamus. Qui laborum facere voluptatum. Officia aliquid minima consequuntur doloremque non modi.",
"children": [],
"parent": {
"id": null,
"name": null,
"slug": "",
"description": null
}
},
{
"id": 2,
"name": "Lifestyle",
"slug": "lifestyle",
"description": "Esse vero alias optio dicta et voluptate. Suscipit rerum magni ipsam consequuntur. Molestias nemo voluptas odit tenetur.",
"children": [
{
"id": 3,
"name": "Travel Tips",
"slug": "travel-tips",
"description": "Quam exercitationem sapiente vitae pariatur consectetur numquam. Nulla repudiandae et necessitatibus aliquid."
}
],
"parent": {
"id": null,
"name": null,
"slug": "",
"description": null
}
},
{
"id": 3,
"name": "Travel Tips",
"slug": "travel-tips",
"description": "Quam exercitationem sapiente vitae pariatur consectetur numquam. Nulla repudiandae et necessitatibus aliquid.",
"children": [],
"parent": {
"id": 2,
"name": "Lifestyle",
"slug": "lifestyle",
"description": "Esse vero alias optio dicta et voluptate. Suscipit rerum magni ipsam consequuntur. Molestias nemo voluptas odit tenetur."
}
},
{
"id": 4,
"name": "Healthy",
"slug": "healthy",
"description": "Sed sed hic error nostrum nihil est. Nostrum et autem consequatur laboriosam quas quo. Veniam quod accusamus quidem et laboriosam. Placeat est aut dignissimos sunt.",
"children": [
{
"id": 5,
"name": "Travel Tips",
"slug": "travel-tips",
"description": "Est sed consequatur veritatis dolorem quia ut fugit. Minus dolor iste fugiat molestias cupiditate ut eos debitis. Ea qui velit iure doloribus aliquid quasi."
}
],
"parent": {
"id": null,
"name": null,
"slug": "",
"description": null
}
},
{
"id": 5,
"name": "Travel Tips",
"slug": "travel-tips",
"description": "Est sed consequatur veritatis dolorem quia ut fugit. Minus dolor iste fugiat molestias cupiditate ut eos debitis. Ea qui velit iure doloribus aliquid quasi.",
"children": [],
"parent": {
"id": 4,
"name": "Healthy",
"slug": "healthy",
"description": "Sed sed hic error nostrum nihil est. Nostrum et autem consequatur laboriosam quas quo. Veniam quod accusamus quidem et laboriosam. Placeat est aut dignissimos sunt."
}
},
{
"id": 6,
"name": "Hotel",
"slug": "hotel",
"description": "Voluptas tempore ipsum minus voluptas. Ipsam molestias dicta laudantium ipsam omnis. Ut molestiae nostrum atque quae ea enim est.",
"children": [
{
"id": 7,
"name": "Nature",
"slug": "nature",
"description": "Quibusdam possimus laborum necessitatibus voluptatem voluptatem sint maiores. Dolor repellat dolor impedit suscipit asperiores et. Illo sit eos error ullam quam expedita eum dolor."
}
],
"parent": {
"id": null,
"name": null,
"slug": "",
"description": null
}
},
{
"id": 7,
"name": "Nature",
"slug": "nature",
"description": "Quibusdam possimus laborum necessitatibus voluptatem voluptatem sint maiores. Dolor repellat dolor impedit suscipit asperiores et. Illo sit eos error ullam quam expedita eum dolor.",
"children": [],
"parent": {
"id": 6,
"name": "Hotel",
"slug": "hotel",
"description": "Voluptas tempore ipsum minus voluptas. Ipsam molestias dicta laudantium ipsam omnis. Ut molestiae nostrum atque quae ea enim est."
}
}
],
"links": {
"first": "http:\/\/localhost\/api\/v1\/categories?page=1",
"last": "http:\/\/localhost\/api\/v1\/categories?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "http:\/\/localhost\/api\/v1\/categories?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "http:\/\/localhost\/api\/v1\/categories",
"per_page": 10,
"to": 7,
"total": 7
},
"error": false,
"message": null
}
Received response:
Request failed with error:
List tags
Example request:
curl -X GET \
-G "https://cms.botble.com/api/v1/tags" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1"
const url = new URL(
"https://cms.botble.com/api/v1/tags"
);
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
{
"data": [
{
"id": 1,
"name": "General",
"slug": "general",
"description": ""
},
{
"id": 2,
"name": "Design",
"slug": "design",
"description": ""
},
{
"id": 3,
"name": "Fashion",
"slug": "fashion",
"description": ""
},
{
"id": 4,
"name": "Branding",
"slug": "branding",
"description": ""
},
{
"id": 5,
"name": "Modern",
"slug": "modern",
"description": ""
}
],
"links": {
"first": "http:\/\/localhost\/api\/v1\/tags?page=1",
"last": "http:\/\/localhost\/api\/v1\/tags?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "http:\/\/localhost\/api\/v1\/tags?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "http:\/\/localhost\/api\/v1\/tags",
"per_page": 10,
"to": 5,
"total": 5
},
"error": false,
"message": null
}
Filters posts
Example request:
curl -X GET \
-G "https://cms.botble.com/api/v1/posts/filters?page=7&per_page=3&search=deserunt&after=ipsam&author=sit&author_exclude=aut&before=deserunt&exclude=hic&include=voluptatem&order=harum&order_by=vel&categories=est&categories_exclude=sit&tags=odio&tags_exclude=nemo&featured=consequatur" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1"
const url = new URL(
"https://cms.botble.com/api/v1/posts/filters"
);
let params = {
"page": "7",
"per_page": "3",
"search": "deserunt",
"after": "ipsam",
"author": "sit",
"author_exclude": "aut",
"before": "deserunt",
"exclude": "hic",
"include": "voluptatem",
"order": "harum",
"order_by": "vel",
"categories": "est",
"categories_exclude": "sit",
"tags": "odio",
"tags_exclude": "nemo",
"featured": "consequatur",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (500):
{
"message": "Server Error"
}
Received response:
Request failed with error:
Get post by slug
Example request:
curl -X GET \
-G "https://cms.botble.com/api/v1/posts/ullam?slug=delectus" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1"
const url = new URL(
"https://cms.botble.com/api/v1/posts/ullam"
);
let params = {
"slug": "delectus",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (404):
{
"error": true,
"data": null,
"message": "Not found"
}
Received response:
Request failed with error:
Filters categories
Example request:
curl -X GET \
-G "https://cms.botble.com/api/v1/categories/filters" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1"
const url = new URL(
"https://cms.botble.com/api/v1/categories/filters"
);
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (200):
{
"data": [
{
"id": 3,
"name": "Travel Tips",
"slug": "travel-tips",
"description": "Quam exercitationem sapiente vitae pariatur consectetur numquam. Nulla repudiandae et necessitatibus aliquid."
},
{
"id": 5,
"name": "Travel Tips",
"slug": "travel-tips",
"description": "Est sed consequatur veritatis dolorem quia ut fugit. Minus dolor iste fugiat molestias cupiditate ut eos debitis. Ea qui velit iure doloribus aliquid quasi."
},
{
"id": 7,
"name": "Nature",
"slug": "nature",
"description": "Quibusdam possimus laborum necessitatibus voluptatem voluptatem sint maiores. Dolor repellat dolor impedit suscipit asperiores et. Illo sit eos error ullam quam expedita eum dolor."
},
{
"id": 2,
"name": "Lifestyle",
"slug": "lifestyle",
"description": "Esse vero alias optio dicta et voluptate. Suscipit rerum magni ipsam consequuntur. Molestias nemo voluptas odit tenetur."
},
{
"id": 6,
"name": "Hotel",
"slug": "hotel",
"description": "Voluptas tempore ipsum minus voluptas. Ipsam molestias dicta laudantium ipsam omnis. Ut molestiae nostrum atque quae ea enim est."
},
{
"id": 4,
"name": "Healthy",
"slug": "healthy",
"description": "Sed sed hic error nostrum nihil est. Nostrum et autem consequatur laboriosam quas quo. Veniam quod accusamus quidem et laboriosam. Placeat est aut dignissimos sunt."
},
{
"id": 1,
"name": "Design",
"slug": "design",
"description": "Autem cumque et sint cum repellat. Ea veritatis quo odit est accusamus. Qui laborum facere voluptatum. Officia aliquid minima consequuntur doloremque non modi."
}
],
"links": {
"first": "http:\/\/localhost\/api\/v1\/categories\/filters?page=1",
"last": "http:\/\/localhost\/api\/v1\/categories\/filters?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "http:\/\/localhost\/api\/v1\/categories\/filters?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "http:\/\/localhost\/api\/v1\/categories\/filters",
"per_page": 10,
"to": 7,
"total": 7
},
"error": false,
"message": null
}
Received response:
Request failed with error:
Get category by slug
Example request:
curl -X GET \
-G "https://cms.botble.com/api/v1/categories/placeat?slug=aut" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1"
const url = new URL(
"https://cms.botble.com/api/v1/categories/placeat"
);
let params = {
"slug": "aut",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (404):
{
"error": true,
"data": null,
"message": "Not found"
}
Received response:
Request failed with error:
Profile
Get the user profile information.
requires authentication
Example request:
curl -X GET \
-G "https://cms.botble.com/api/v1/me" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1"
const url = new URL(
"https://cms.botble.com/api/v1/me"
);
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
Example response (302):
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<meta http-equiv="refresh" content="0;url='http://cms.botble.com/admin/login'" />
<title>Redirecting to http://cms.botble.com/admin/login</title>
</head>
<body>
Redirecting to <a href="http://cms.botble.com/admin/login">http://cms.botble.com/admin/login</a>.
</body>
</html>
Received response:
Request failed with error:
Update profile
requires authentication
Example request:
curl -X PUT \
"https://cms.botble.com/api/v1/me" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1" \
-H "Content-Type: application/json" \
-d '{"first_name":"dolores","last_name":"consequatur","email":"maiores","dob":"sed","gender":"in","description":"consequuntur","phone":"consequatur"}'
const url = new URL(
"https://cms.botble.com/api/v1/me"
);
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"first_name": "dolores",
"last_name": "consequatur",
"email": "maiores",
"dob": "sed",
"gender": "in",
"description": "consequuntur",
"phone": "consequatur"
}
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error:
Update Avatar
requires authentication
Example request:
curl -X POST \
"https://cms.botble.com/api/v1/update/avatar" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1" \
-H "Content-Type: multipart/form-data" \
-F "avatar=@/tmp/phpdSiWPg"
const url = new URL(
"https://cms.botble.com/api/v1/update/avatar"
);
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Content-Type": "multipart/form-data",
"Accept": "application/json",
};
const body = new FormData();
body.append('avatar', document.querySelector('input[name="avatar"]').files[0]);
fetch(url, {
method: "POST",
headers,
body,
}).then(response => response.json());
Received response:
Request failed with error:
Update password
requires authentication
Example request:
curl -X PUT \
"https://cms.botble.com/api/v1/update/password" \
-H "Authorization: Bearer {token}" \
-H "Api-Version: v1" \
-H "Content-Type: application/json" \
-d '{"password":"perspiciatis"}'
const url = new URL(
"https://cms.botble.com/api/v1/update/password"
);
let headers = {
"Authorization": "Bearer {token}",
"Api-Version": "v1",
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"password": "perspiciatis"
}
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
Received response:
Request failed with error: