---
title: "Get Metadata Schema"
method: GET
path: "/v1/metadata-schemas/{resource}"
tags: ["Metadata Schemas"]
---

# Get Metadata Schema

`GET /v1/metadata-schemas/{resource}`

Retrieves a metadata schema per resource type.

## Resource types

### Standard

You can retrieve metadata schemas for the standard metadata schema definitions listed below. Add one of these types as the resource path parameter.

- `campaign`
- `customer`
- `earning_rule`
- `loyalty_tier`
- `order`
- `order_item`
- `product`
- `promotion_tier`
- `publication`
- `redemption`
- `reward`
- `voucher`

### Custom

If you have defined a [custom metadata schema](/prepare/metadata#add-metadata), provide its name in the `"resource"` field to retrieve its details.

>📘 Management API
>
>If you have Management API enabled, you can also use the [Get Metadata Schemas](/api-reference/management/get-metadata-schema) endpoint to retrieve a metadata schema using its ID.

## Response `200`

The response does not include unknown metadata properties in the response, i.e. those that have been defined outside of the **Project Settings** > **Metadata Schema** definitions. For example, an unknown metadata property can be defined in the campaign manager.

- MetadataSchemasGetResponseBody — Object representing a metadata schema.
  - `id` string, required — Unique identifier of the metadata schema.
  - `related_object` string, required — The resource type. You can define custom metadata schemas, which have a custom `"related_object"` resource type. The standard metadata schemas are: `"campaign"`, `"customer"`, `"earning_rule"`, `"loyalty_tier"`, `"order"`, `"order_item"`, `"product"`, `"promotion_tier"`, `"publication"`, `"redemption"`, `"reward"`, `"voucher"`.
  - `properties` object, required — Contains metadata definitions.
  - `allow_defined_only` boolean, nullable, required — Restricts the creation of metadata fields when set to `true`. It indicates whether or not you can create new metadata definitions, e.g. in the campaign or publication manager. If set to `true`, then only the defined fields are available for assigning values.
  - `created_at` string, date-time, required — Timestamp representing the date and time when the metadata schema was created. The value for this parameter is shown in the ISO 8601 format.
  - `updated_at` string, date-time, nullable, required — Timestamp representing the date and time when the metadata schema was updated. The value for this parameter is shown in the ISO 8601 format.
  - `object` string, required — The type of the object represented by the JSON. This object stores information about the metadata schema.

## Other responses

- `404` — Returns an error if the resource provided in the path is not found.

---

[API](https://skmtc.net/voucherifyio/apis/voucherify-api-async-actions.md) · [All operations](https://skmtc.net/voucherifyio/apis/voucherify-api-async-actions/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/voucherifyio/voucherify-api-async-actions/revisions/4982266e0494/schema)
