> For the complete documentation index, see [llms.txt](https://docs.guardianservice.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.guardianservice.app/technical-information/users/standard-registry-users-schemas-and-policies/policies/creating-a-policy-using-apis/publish-a-policy.md).

# Publish a Policy

### PUBLISH POLICY USING SPECIFIED POLICY ID

## Publishes the policy onto IPFS

<mark style="color:orange;">`PUT`</mark> `/policies/{policyId}/publish`

Publishes the policy with the specified (internal) policy ID onto IPFS, sends a message featuring its IPFS CID into the corresponding Hedera topic. Only users with the Standard Registry role are allowed to make the request.

#### Path Parameters

| Name                                       | Type   | Description        |
| ------------------------------------------ | ------ | ------------------ |
| policyID<mark style="color:red;">\*</mark> | String | Selected policy ID |

#### Request Body

| Name                                            | Type   | Description                         |
| ----------------------------------------------- | ------ | ----------------------------------- |
| policyVersion<mark style="color:red;">\*</mark> | Object | Object that contains policy version |

{% tabs %}
{% tab title="200: OK Successful Operation" %}

```javascript
{
    content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublishPolicy'
}
```

{% endtab %}

{% tab title="401: Unauthorized Unauthorized" %}

```javascript
{
    // Response
}
```

{% endtab %}

{% tab title="403: Forbidden Forbidden" %}

```javascript
{
    // Response
}
```

{% endtab %}

{% tab title="500: Internal Server Error Internal Server Error" %}

```javascript
{
    content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
}
```

{% endtab %}
{% endtabs %}
