> For the complete documentation index, see [llms.txt](https://dev.guardian.hedera.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dev.guardian.hedera.com/guardian/standard-registry/schemas/schema-creation-using-apis/publishing-schema-based-on-schema-id.md).

# Publishing Schema based on Schema ID

**`PUT /schemas/{schemaId}/publish`**

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

**Authentication:** Bearer token required (`Authorization: Bearer <token>`)

**Permission:** `Permissions.SCHEMAS_SCHEMA_REVIEW`

***

## Request

### Path Parameters

| Parameter  | Type   | Required | Description |
| ---------- | ------ | -------- | ----------- |
| `schemaId` | String | Yes      | Schema ID   |

### Request Body

```json
{
  "version": "1.0.0"
}
```

| Field     | Type   | Required | Description               |
| --------- | ------ | -------- | ------------------------- |
| `version` | String | Yes      | Schema version to publish |

***

## Response

### Success Response

**Status:** `200 OK`

Returns an array of schema objects.

```json
[
  {
    "id": "f3b2a9c1e4d5678901234567",
    "uuid": "f3b2a9c1e4d5678901234567",
    "name": "Schema name",
    "status": "PUBLISHED",
    "version": "1.0.0",
    "messageId": "1700000000.000000001"
  }
]
```

### Error Responses

| Status                      | Description               |
| --------------------------- | ------------------------- |
| `401 Unauthorized`          | Missing or invalid token  |
| `403 Forbidden`             | Insufficient permissions  |
| `422 Unprocessable Entity`  | Validation error          |
| `500 Internal Server Error` | Unexpected server failure |
