---
title: "forum_post.created"
description: "Delivered when forum_post.created occurs. Signed per the Standard Webhooks specification: verify the webhook-signature header over the exact bytes of webhook-id, webhook-timestamp and the raw body, and reject a timestamp more than five minutes from your own clock."
image: "https://docs.quirelms.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.quirelms.com/llms.txt
> Use this file to discover all available pages before exploring further.

Path: Quire API

`POST forum_post.created`

_Webhook._

Delivered when forum_post.created occurs. Signed per the Standard Webhooks specification: verify the webhook-signature header over the exact bytes of webhook-id, webhook-timestamp and the raw body, and reject a timestamp more than five minutes from your own clock.

## Request body

_Required._

- `forum_post.created.id` (string, required) — Equal to the webhook-id header and to the outbox event identifier. Deduplicate on it.
- `forum_post.created.type` (string, required)
- `forum_post.created.version` (integer, required)
- `forum_post.created.occurred_at` (string, required)
  - format `date-time`
- `forum_post.created.tenant` (object, required)
  - `forum_post.created.tenant.id` (string, required)
  - `forum_post.created.tenant.slug` (string, required)
- `forum_post.created.subscription_id` (string, required)
- `forum_post.created.livemode` (boolean, required)
- `forum_post.created.data` (object, required)
  - `forum_post.created.data.author_id` (string, required)
    - format `uuid`; pattern `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  - `forum_post.created.data.course_id` (string, required)
    - format `uuid`; pattern `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  - `forum_post.created.data.discussion_id` (string, required)
    - format `uuid`; pattern `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  - `forum_post.created.data.discussion_name` (string, required)
  - `forum_post.created.data.forum_id` (string, required)
    - format `uuid`; pattern `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  - `forum_post.created.data.forum_name` (string, required)
  - `forum_post.created.data.is_private_reply` (boolean, required)
  - `forum_post.created.data.post_id` (string, required)
    - format `uuid`; pattern `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  - `forum_post.created.data.recipients` (object, required)
    - `forum_post.created.data.recipients.kind` (string, required)
    - `forum_post.created.data.recipients.user_ids` (array<string>, required)
      - format `uuid`; pattern `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  - `forum_post.created.data.subject` (string, required)
- `forum_post.created.links` (map<string>, optional) — Where to read the current state of what the event is about.

## Example request

```json
{
  "id": "string",
  "type": "forum_post.created",
  "version": 1,
  "occurred_at": "2019-08-24T14:15:22Z",
  "tenant": {
    "id": "string",
    "slug": "string"
  },
  "subscription_id": "string",
  "livemode": true,
  "data": {
    "author_id": "78424c75-5c41-4b25-9735-3c9f7d05c59e",
    "course_id": "5e757794-c815-4ccc-bf16-1010d8ef2347",
    "discussion_id": "4a1a65c7-bdf0-4314-aad5-d04482b0013c",
    "discussion_name": "string",
    "forum_id": "eb6a8915-c09b-4eb7-b3ec-bc0c4b7e5e4b",
    "forum_name": "string",
    "is_private_reply": true,
    "post_id": "dd3504b4-6e8d-47e2-aab1-573a0c9d6149",
    "recipients": {
      "kind": "users",
      "user_ids": [
        "497f6eca-6276-4993-bfeb-53cbbbba6f08"
      ]
    },
    "subject": "string"
  },
  "links": {
    "property1": "http://example.com",
    "property2": "http://example.com"
  }
}
```

## Responses

### 2XX

Any 2xx acknowledges the delivery. A 410 disables the subscription. Anything else is retried with exponential backoff and full jitter over about 36 hours.


Source: https://docs.quirelms.com/api/webhooks/forum_post.created/index.md
