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

# PFCatalogPublishDraftItemAsync

> Initiates a publish of an item from the working catalog to the public catalog. You can use the GetItemPublishStatus API to track the state of the item publish.

Initiates a publish of an item from the working catalog to the public catalog. You can use the GetItemPublishStatus API to track the state of the item publish.

## Syntax

```cpp theme={null}
HRESULT PFCatalogPublishDraftItemAsync(  
    PFEntityHandle entityHandle,  
    const PFCatalogPublishDraftItemRequest* request,  
    XAsyncBlock* async  
)  
```

### Parameters

**`entityHandle`**   PFEntityHandle

PFEntityHandle to use for authentication.

**`request`**   [PFCatalogPublishDraftItemRequest\*](/services/playfab/api-references/c/pfcatalogtypes/structs/pfcatalogpublishdraftitemrequest)

Populated request object.

**`async`**   XAsyncBlock\*<br />*Inout*

XAsyncBlock for the async operation.

### Return value

Type: HRESULT

Result code for this API operation.

## Remarks

This API is available on all platforms. The call kicks off a workflow to publish the item to the public catalog. The Publish Status API should be used to monitor the publish job. Call XAsyncGetStatus to get the status of the operation. If the service call is unsuccessful, the async result will be E\_PF\_DATABASE\_THROUGHPUT\_EXCEEDED, E\_PF\_ITEM\_NOT\_FOUND or any of the global PlayFab Service errors. See doc page "Handling PlayFab Errors" for more details on error handling.

## Requirements

**Header:** PFCatalog.h

## See also

[PFCatalog members](/services/playfab/api-references/c/pfcatalog/pfcatalog_members)


## Related topics

- [Services C API overview - PFCatalog.h](/services/playfab/api-references/c/pfcatalog/pfcatalog_members.md)
- [PFCatalogCreateDraftItemAsync](/services/playfab/api-references/c/pfcatalog/functions/pfcatalogcreatedraftitemasync.md)
- [PFCatalogPublishDraftItemRequest](/services/playfab/api-references/c/pfcatalogtypes/structs/pfcatalogpublishdraftitemrequest.md)
- [PFCatalogGetDraftItemAsync](/services/playfab/api-references/c/pfcatalog/functions/pfcataloggetdraftitemasync.md)
- [PFCatalogGetDraftItemsAsync](/services/playfab/api-references/c/pfcatalog/functions/pfcataloggetdraftitemsasync.md)
