> Portal Navigation:
> 
> - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version.
> - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages).
> - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`).
> - Top-level index of all portals: https://dev.wix.com/docs/llms.txt
> - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt

# PublishDataItemDraft

# Package: cms

# Namespace: DataItemService

# Method link: https://dev.wix.com/docs/api-reference/business-solutions/cms/data-items/publish-data-item-draft.md

## Permission Scopes:
Write Data Items: SCOPE.DC-DATA.WRITE

## Introduction

Publishes a pending draft of a data item.


This method replaces the published item's data with the draft's content. On success, the draft is deleted.

Pass the **published** collection ID as `dataCollectionId` (for example, `articles`).

To author a brand-new draft, call [Insert Data Item](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/insert-data-item.md) with `dataCollectionId` set to your collection's drafts shadow (for example, `articles__drafts` when the published collection ID is `articles`). Edit the draft via [Update Data Item](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/update-data-item.md) or [Patch Data Item](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/patch-data-item.md) against the same drafts shadow collection ID.

To retract a published item back to draft state, call [Unpublish Data Item](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/unpublish-data-item.md).

> **Notes:**
> - Returns `NOT_FOUND` if no pending draft exists for the supplied `dataItemId`.
> - Calling this method triggers domain events on both collections: a [Data Item Created](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/data-item-created.md) or [Data Item Updated](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/data-item-updated.md) event on the published collection, and a [Data Item Deleted](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/data-item-deleted.md) event on the drafts shadow collection.

---

## REST API

### Schema

```
 Method: publishDataItemDraft
 Description: Publishes a pending draft of a data item.   This method replaces the published item's data with the draft's content. On success, the draft is deleted.  Pass the **published** collection GUID as `dataCollectionId` (for example, `articles`).  To author a brand-new draft, call [Insert Data Item](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/insert-data-item.md) with `dataCollectionId` set to your collection's drafts shadow (for example, `articles__drafts` when the published collection GUID is `articles`). Edit the draft via [Update Data Item](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/update-data-item.md) or [Patch Data Item](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/patch-data-item.md) against the same drafts shadow collection GUID.  To retract a published item back to draft state, call [Unpublish Data Item](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/unpublish-data-item.md).  > **Notes:** > - Returns `NOT_FOUND` if no pending draft exists for the supplied `dataItemId`. > - Calling this method triggers domain events on both collections: a [Data Item Created](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/data-item-created.md) or [Data Item Updated](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/data-item-updated.md) event on the published collection, and a [Data Item Deleted](https://dev.wix.com/docs/rest/business-solutions/cms/data-items/data-item-deleted.md) event on the drafts shadow collection.
 URL: https://www.wixapis.com/wix-data/v2/items/publish-draft
 Method: POST
 # Note: If the parameter `a.b` is listed under required parameters, `b` is only required if `a` is also present.
 Required parameters:  dataCollectionId, dataItemId
 Method parameters: 
   param name: dataCollectionId | type: dataCollectionId | description: GUID of the published data collection. | required: true | validation: maxLength 256
   param name: dataItemId | type: dataItemId | description: GUID of the data item whose draft will be published. Returns `NOT_FOUND` if no pending draft exists for this GUID. | required: true | validation: maxLength 128
 Return type: PublishDataItemDraftResponse
  - name: dataItem | type: DataItem | description: The newly-published data item, reflecting the draft's content. The draft has been deleted.  
     - name: id | type: string | description: Data item GUID.  When an item is inserted into a collection, the item's GUID is automatically assigned a random value. You can optionally provide a custom GUID in `dataItem.id` when inserting the item. If you specify an GUID that already exists in the collection, the insertion will fail.  | validation: maxLength 128, immutable
     - name: dataCollectionId | type: string | description: GUID of the collection this item belongs to.  This is the user-defined collection identifier set when the collection is created (for example, `EvalCustomers`), not a GUID.  | read-only: true | validation: maxLength 256
     - name: data | type: object | description: Data item contents.  Property-value pairs representing the data item's payload. When retrieving a data item, it also includes the following read-only fields:  + `_id`: Item GUID. + `_createdDate`: Date and time the item was added to the collection. + `_updatedDate`: Date and time the item was last modified. When the item is first inserted, `_createdDate` and `_updatedDate` have the same value. + `_ownerId`: GUID of the user who created the item. Can be modified with site owner permissions.  


```

### Examples

### Publish a pending draft
```curl
curl -X POST \
'https://www.wixapis.com/wix-data/v2/items/publish-draft' \
-H 'Content-Type: application/json' \
-H 'Authorization: <AUTH>' \
-d '{
    "dataCollectionId": "tutorials",
    "dataItemId": "5331fc15-9441-4fd4-bc7b-7f6870c69228"
}'
```

---