---
title: "Get schemas"
method: GET
path: "/api/dataentities/{dataEntityName}/schemas"
tags: ["Schemas"]
---

# Get schemas

`GET /api/dataentities/{dataEntityName}/schemas`

Retrieves all existing [schemas](https://developers.vtex.com/docs/guides/master-data-schema-lifecycle) for a given data entity. 

## Permissions

Any user or [API key](https://developers.vtex.com/docs/guides/api-authentication-using-api-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:

| **Product** | **Category** | **Resource** |
| --------------- | ----------------- | ----------------- |
| Dynamic Storage | Dynamic storage generic resources | **Read only documents** |
| Dynamic Storage | Dynamic storage generic resources | **Insert or update document (not remove)** |
| Dynamic Storage | Dynamic storage generic resources | **Full access to all documents** |
| Dynamic Storage | Dynamic storage generic resources | **Master Data administrator** |

There are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint.To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).

>❗ To prevent integrations from having excessive permissions, consider the [best practices for managing API keys](https://help.vtex.com/en/tutorial/best-practices-api-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.

## Path parameters

- `dataEntityName` string, required

## Headers

- `Content-Type` string, required

## Response `200`

OK

- GetSchemasResponse[] — Array with existing schemas. In case there is only one existing schema, it will be an object instead, without the `name` property and the named `schema` object, following the same structure as the [Get schema by name](https://developers.vtex.com/docs/api-reference/master-data-api-v2#get-/api/dataentities/-dataEntityName-/schemas/-schemaName-?endpoint=get-/api/dataentities/-dataEntityName-/schemas/-schemaName-) endpoint response.
  - `name` string, required — Schema name.
  - `schema` object, required — Object with schema properties.
    - `properties` object — Object containing schema properties.
      - `name` object — Property name.
        - `type` 'array' | 'boolean' | 'integer' | 'number' | 'object' | 'string', required — Type of property.

## Changes

- **2026-01-27** `33ba08390ac8` — 1 breaking
  - the response property `items/schema/properties/name` became optional for the status `200`
- **2023-11-09** `025bb8367247` — 2 info
  - the response property `items/name` became required for the status `200`
  - the response property `items/schema` became required for the status `200`
- **2023-10-19** `acb826776d02` — 1 info
  - added the media type `application/json` for the response with the status `200`

[Change history](https://skmtc.dev/vtex/apis/master-data-api-v2/changes/api/dataentities/:dataEntityName/schemas/get.md)

---

[API](https://skmtc.dev/vtex/apis/master-data-api-v2.md) · [All operations](https://skmtc.dev/vtex/apis/master-data-api-v2/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/vtex/master-data-api-v2/revisions/6d3f8010fa54/schema)
