# Create Post

`POST` <https://example.com/wp-json/dt-posts/v2/{post_type}/>

Requires permission: `create_{post_type}`

## Parameters

Body params: See [Fields Format](/theme-core/api-posts/post-types-fields-format.md)

Query params: add `?silent=true` to disable notifications

Query param: `check_for_duplicates`.\
Check for duplicates on a field before creating an new post. If a duplicate is found, then the existing post will be updated instead of a new one created.\
ex: `check_for_duplicates=contact_phone,contact_email`

### do\_not\_overwrite\_existing\_fields (boolean)

When enabled, existing field values on a post will not be overwritten during creation:

* **Single-value fields:** If the field already has a value, it will be preserved and not updated.
* **Multi-value fields:** Only new values that do not already exist will be added; existing values are preserved.

## Returns

Will return the same content as: [Get Post](/theme-core/api-posts/get-post.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developers.disciple.tools/theme-core/api-posts/create-post.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
