---
title: "Ghost posts webhook"
method: POST
path: "/projects/{project_id}/integrations/ghost/posts"
tags: ["Ghost"]
---

# Ghost posts webhook

`POST /projects/{project_id}/integrations/ghost/posts`

Webhook endpoint that Ghost calls when posts are created or updated. Creates or updates content in BeyondWords when a post is published or scheduled.

## Request body

- object

## Response `200`

unpublishes existing content item when skipped tag is added

## Other responses

- `201` — creates new content item when post status is scheduled
- `204` — does not create a new content item when skip tag is present
- `400` — bad request when post key is missing
- `401` — unauthorized when api_key is invalid
- `403` — forbidden when existing content item has cms_update_enabled=false

---

[API](https://skmtc.dev/beyondwords/apis/beyondwords-rest-api.md) · [All operations](https://skmtc.dev/beyondwords/apis/beyondwords-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/beyondwords/beyondwords-rest-api/revisions/8c4bfe3e2ebd/schema)
