Blog Authors & Cats Setup
Manage blog authors, categories, and validate URL slugs for your GHL blog sites. These endpoints help you organize blog content and avoid slug conflicts before publishing. This quick-start covers authentication, retrieving authors and categories, and checking slug availability.
Prerequisites
Before making your first Blog Authors & Cats call, confirm you have:
- A GoHighLevel sub-account with at least one blog site configured
- At least one author and one category created in your blog settings
- Access to Settings > Integrations > Private Integrations in your sub-account
- A REST client such as Postman, Insomnia, or
curlin your terminal - Your sub-account’s
locationId(found in Settings > Business Profile)
Authors and categories are typically created through the GHL dashboard under your blog site settings. Configure them before testing the API.
Set Up Authentication
All Blog Authors & Cats endpoints require a Private Integration Token (PIT) with the blogs scope.
Navigate to Settings > Integrations > Private Integrations. Click Create New Integration, name it “Blog Metadata API,” and enable the blogs scope. Click Save and copy the generated token.
Pass this token in the Authorization header as a Bearer token. Set your base URL to https://services.leadconnectorhq.com. Include the Version: 2021-07-28 header.
Make Your First Call
Start by listing all authors for your location:
GET /blogs/authors?locationId=your-location-id
Authorization: Bearer {your-pit-token}
Then list all categories:
GET /blogs/categories?locationId=your-location-id
Authorization: Bearer {your-pit-token}
Both endpoints return arrays of objects with id and name fields. Use these IDs when creating blog posts through Blog Post CRUD.
To validate a URL slug before creating a post, use the slug check endpoint:
GET /blogs/slug/check?locationId=your-location-id&slug=my-new-post&blogId=your-blog-id
Authorization: Bearer {your-pit-token}
This returns whether the slug is available or already taken. Always check slugs before creating posts to avoid 422 errors on the create endpoint.
Handle the Response
A successful authors call returns a 200 status:
{
"authors": [
{ "id": "author-001", "name": "John Doe" },
{ "id": "author-002", "name": "Jane Smith" }
]
}
The categories response follows the same structure with id and name fields. The slug check response indicates availability:
{
"available": true,
"slug": "my-new-post"
}
If available is false, the slug is already in use. Modify your slug and check again. Common errors: 401 means your token is invalid. 400 means a required parameter like locationId is missing. Empty arrays for authors or categories mean none have been configured in the dashboard.
Test Your Setup
Run through this checklist to confirm everything works:
- List authors with
GET /blogs/authorsand verify results match your blog settings - List categories with
GET /blogs/categoriesand confirm your categories appear - Check a slug with
GET /blogs/slug/checkusing a known existing slug, and confirmavailableisfalse - Check a new slug and confirm
availableistrue - Create a post with Blog Post CRUD using an author ID and category ID from these results
If authors or categories are empty, add them through the blog settings in the GHL dashboard, then re-test the API.
Next Steps
Read the full Blog Authors & Cats Guide for content organization strategies across multi-author blogs. From here, explore Blog Post CRUD for publishing with author and category assignments and Blog Sites for managing your blog properties.