# Create Blog Post

- **URL:** https://marketplace.gohighlevel.com/docs/ghl/blogs/create-blog-post
- **Summary:** The 'Create Blog Post' API allows you create blog post for any given blog site. Please use blogs/post.write

[Skip to main content](https://marketplace.gohighlevel.com/docs/ghl/blogs/create-blog-post#__docusaurus_skipToContent_fallback)

Version: v3

Create Blog Post
================

POST 

https://services.leadconnectorhq.com/blogs/posts

Copy for LLMView as MarkdownOpen in ClaudeOpen in ChatGPTOpen in Cursor

The "Create Blog Post" API allows you create blog post for any given blog site. Please use blogs/post.write

### Requirements

#### Scope(s)

`blogs/post.write`

#### Auth Method(s)

`OAuth Access Token``Private Integration Token`

#### Token Type(s)

`Sub-Account Token`

Request[​](https://marketplace.gohighlevel.com/docs/ghl/blogs/create-blog-post#request "Direct link to request")

### Header Parameters

**Version** stringrequired

**Possible values:** \[`v3`\]

API Version

*   application/json

*   Body
*   Example (auto)

### Body**required**

**title**stringrequired

**Example:** `Your blog title`

**locationId**stringrequired

**Example:** `Location ID`

**blogId**stringrequired

You can find the blog id from blog site dashboard link

**Example:** `Blog ID`

**imageUrl**stringrequired

**Example:** `Image URl`

**description**stringrequired

**Example:** `A short description`

**rawHTML**stringrequired

**Example:** `<h1>Your blog content</h1>`

**status**stringrequired

**Possible values:** \[`DRAFT`, `PUBLISHED`, `SCHEDULED`, `ARCHIVED`\]

**Example:** `This can be PUBLISHED OR SCHEDULED OR ARCHIVED OR DRAFT`

**imageAltText**stringrequired

**Example:** `Alt text for your blog image`

**categories**string\[\]required

This needs to be array of category ids, which you can get from the category get api call.

**Example:** `["9c48df2694a849b6089f9d0d3513efe","6683abde331c041f32c07aee"]`

**tags**string\[\]

**Example:** `["blog","seo"]`

**author**stringrequired

This needs to be author id, which you can get from the author get api call.

**Example:** `6683abde331c041f32c07aea`

**urlSlug**stringrequired

**Example:** `any-blog-post-url`

**canonicalLink**string

**Example:** `https://tryghl.blog/post/testing-unsplash`

**publishedAt**stringrequired

Provide ISO timestamp

**Example:** `2025-02-05T18:30:47.000Z`

    {  "title": "Your blog title",  "locationId": "Location ID",  "blogId": "Blog ID",  "imageUrl": "Image URl",  "description": "A short description",  "rawHTML": "<h1>Your blog content</h1>",  "status": "This can be PUBLISHED OR SCHEDULED OR ARCHIVED OR DRAFT",  "imageAltText": "Alt text for your blog image",  "categories": [    "9c48df2694a849b6089f9d0d3513efe",    "6683abde331c041f32c07aee"  ],  "tags": [    "blog",    "seo"  ],  "author": "6683abde331c041f32c07aea",  "urlSlug": "any-blog-post-url",  "canonicalLink": "https://tryghl.blog/post/testing-unsplash",  "publishedAt": "2025-02-05T18:30:47.000Z"}

Responses[​](https://marketplace.gohighlevel.com/docs/ghl/blogs/create-blog-post#responses "Direct link to Responses")

*   200
*   400
*   401
*   422

Successful response

*   application/json

*   Schema
*   Example (auto)

**Schema**

**data** objectrequired

Object containing response data of blog post create.

**categories**string\[\]required

Array of category IDs associated with the blog post

**Example:** `["659ecabc4a37969a2b7cc370","6683abde331c041f32c07aee"]`

**tags**string\[\]

Array of tags associated with the blog post

**Example:** `["Apple","Banana"]`

**archived**booleanrequired

Indicates whether the blog post is archived

**Example:** `false`

**_id**stringrequired

Unique identifier of the blog post

**Example:** `66c381b38be80858b9af62b6`

**title**stringrequired

Title of the blog post

**Example:** `Banana is good source of energy`

**description**stringrequired

Description of the blog post

**Example:** `Description`

**imageUrl**stringrequired

URL of the image associated with the blog post

**Example:** `https://storage.googleapis.com/ghl-test/fACm0Ojm5oC70G3DcFmE/media/66b5aa3b1745b2713a8d033f.jpeg`

**status**stringrequired

Publication status of the blog post

**Example:** `PUBLISHED`

**imageAltText**stringrequired

Alternative text for the blog post image

**Example:** `alt`

**urlSlug**stringrequired

URL slug for the blog post

**Example:** `banana-good-energy`

**canonicalLink**string

Canonical link of the blog post

**Example:** `https://blog.chatgpts.agency/post/test-8384`

**author**string

Identifier of the author of the blog post

**Example:** `659ec9634a3796e4e47cc360`

**publishedAt**stringrequired

Timestamp when the blog post was published

**Example:** `2024-08-19T17:14:57.000Z`

**updatedAt**stringrequired

Timestamp when the blog post was last updated

**Example:** `2024-08-19T17:32:36.182Z`

    {  "data": {    "categories": [      "659ecabc4a37969a2b7cc370",      "6683abde331c041f32c07aee"    ],    "tags": [      "Apple",      "Banana"    ],    "archived": false,    "_id": "66c381b38be80858b9af62b6",    "title": "Banana is good source of energy",    "description": "Description",    "imageUrl": "https://storage.googleapis.com/ghl-test/fACm0Ojm5oC70G3DcFmE/media/66b5aa3b1745b2713a8d033f.jpeg",    "status": "PUBLISHED",    "imageAltText": "alt",    "urlSlug": "banana-good-energy",    "canonicalLink": "https://blog.chatgpts.agency/post/test-8384",    "author": "659ec9634a3796e4e47cc360",    "publishedAt": "2024-08-19T17:14:57.000Z",    "updatedAt": "2024-08-19T17:32:36.182Z"  }}
> Common reference appendix (shared error/status catalog): see [../_shared-appendix.md](../_shared-appendix.md).
**name:** [Authorization](https://marketplace.gohighlevel.com/docs/ghl/blogs/blogs-api#authentication)
**type:** http**scopes:** `blogs/post.write`**scheme:** bearer**bearerFormat:** JWT**in:** header**description:** Use the Access Token generated with user type as Sub-Account (OR) Private Integration Token of Sub-Account.

*   curl
*   nodejs
*   python
*   php
*   java
*   go
*   ruby
*   powershell

*   CURL

    curl -L 'https://services.leadconnectorhq.com/blogs/posts' \-H 'Content-Type: application/json' \-H 'Accept: application/json' \-H 'Authorization: Bearer <Authorization>' \-d '{  "title": "Your blog title",  "locationId": "Location ID",  "blogId": "Blog ID",  "imageUrl": "Image URl",  "description": "A short description",  "rawHTML": "<h1>Your blog content</h1>",  "status": "This can be PUBLISHED OR SCHEDULED OR ARCHIVED OR DRAFT",  "imageAltText": "Alt text for your blog image",  "categories": [    "9c48df2694a849b6089f9d0d3513efe",    "6683abde331c041f32c07aee"  ],  "tags": [    "blog",    "seo"  ],  "author": "6683abde331c041f32c07aea",  "urlSlug": "any-blog-post-url",  "canonicalLink": "https://tryghl.blog/post/testing-unsplash",  "publishedAt": "2025-02-05T18:30:47.000Z"}'

RequestCollapse all

Base URL

Edit

https://services.leadconnectorhq.com

Auth

Bearer Token

Parameters

Version — headerrequired\---v3

Body required

{
  "title": "Your blog title",  "locationId": "Location ID",  "blogId": "Blog ID",  "imageUrl": "Image URl",  "description": "A short description",  "rawHTML": "<h1>Your blog content</h1>",  "status": "This can be PUBLISHED OR SCHEDULED OR ARCHIVED OR DRAFT",  "imageAltText": "Alt text for your blog image",  "categories": \[    "9c48df2694a849b6089f9d0d3513efe",    "6683abde331c041f32c07aee"  \],  "tags": \[    "blog",    "seo"  \],  "author": "6683abde331c041f32c07aea",  "urlSlug": "any-blog-post-url",  "canonicalLink": "https://tryghl.blog/post/testing-unsplash",  "publishedAt": "2025-02-05T18:30:47.000Z"
}
Send API Request

ResponseClear

Click the `Send API Request` button above and see the response here!
