Skip to main content
This guide covers API-based integration. If you’re looking for an iframe embed, that’s not currently supported. The API is the recommended integration path.

Overview

Use the Marky API to create social posts from Go High Level workflows. When a client onboards, a blog publishes, or a campaign launches, GHL can send captions and metadata to Marky so posts land in your queue ready to review or schedule.

Setup

1. Get your API key

Create an API key in your Marky dashboard: open Settings → API Keys and click Create API Key.

2. Find your business ID

Each GHL sub-account maps to a Marky workspace. Find the workspace ID via GET https://api.mymarky.ai/api/businesses.

3. Create a GHL workflow

In Go High Level, create a new Workflow with an HTTP action: Trigger: Whatever event you want (new contact, blog published, campaign started) Action: Custom Webhook / HTTP Request
Method: POST
URL: https://api.mymarky.ai/api/businesses/your-workspace-id/posts
Headers:
  Authorization: Bearer mk_live_your_key_here
  Content-Type: application/json
Body:
{
  "caption": "{{trigger.description}}",
  "restrict_publish_to": ["instagram", "facebook"]
}

4. Schedule the post (optional)

Add another HTTP action:
Method: POST
URL: https://api.mymarky.ai/api/businesses/your-workspace-id/posts/{{post_id}}/schedule
Headers:
  Authorization: Bearer mk_live_your_key_here
  Content-Type: application/json
Body:
{
  "scheduled_publish_time": "2026-12-01T14:00:00Z",
  "restrict_publish_to": ["instagram", "facebook"]
}

White-label agencies

If you white-label GHL for your clients, each client’s GHL sub-account should map to a separate Marky workspace. Use the same API key (org-scoped) but use a different business_id in the URL path per client.

Rate limits

Each API key can make 100 requests per minute, 2,000 per day, and 10,000 per week. These limits apply across all workspaces in your org.