---
title: "Get an OLC editor schema"
description: "Look up the Dark Pawns admin API request and response contract. Sign in with a level 40 character and use the authenticated admin console session."
type: reference
audience: operators
verified: v0.1.8
canonical: https://darkpawns.org/docs/reference/api/admin/operations/get-olc-schema/
---

[Documentation](/docs/) / [Reference](/docs/reference/)

# Get an OLC editor schema

Look up the Dark Pawns admin API request and response contract. Sign in with a level 40 character and use the authenticated admin console session.

GET

/admin/olc/schema/{kind}

FetchcURL

```
const url = 'https://example.com/admin/olc/schema/example';const options = {method: 'GET'};
try {  const response = await fetch(url, options);  const data = await response.json();  console.log(data);} catch (error) {  console.error(error);}
```

```
curl --request GET \  --url https://example.com/admin/olc/schema/example
```

Returns the shared vocabulary and resolved controls for an OLC editor kind.

## Parameters

### Path Parameters

**kind**

required

OLC kind: room, mob, obj, shop, or zone.

string

OLC kind: room, mob, obj, shop, or zone.

## Responses

### 200

OK

application/json

object

**actions**

Array<object> | null

object

**allowed**

required

boolean

**key**

required

string

**label**

required

string

**required\_label**

required

string

**required\_level**

required

integer format: int64

**applies**

object

**add\_operation**

required

string

**max**

required

integer format: int64

**options**

required

Array<object> | null

object

**label**

required

string

**storage**

string

**value**

required

integer format: int64

**remove\_operation**

required

string

**bespoke**

Array<string> | null

**exits**

object

**directions**

required

Array<string> | null

**door\_options**

required

Array<object> | null

object

**label**

required

string

**storage**

string

**value**

required

integer format: int64

**fields**

required

Array<object> | null

object

**bounds**

object

**max**

required

integer format: int64

**min**

required

integer format: int64

**control**

required

string

**key**

required

string

**label**

required

string

**options**

Array<object> | null

object

**label**

required

string

**storage**

string

**value**

required

integer format: int64

**kind**

required

string

**value\_matrix**

Array<object> | null

object

**item\_type**

required

integer format: int64

**item\_type\_label**

required

string

**values**

required

Array<object> | null

\>= 4 items <= 4 items

object

**control**

required

string

**label**

required

string

**max**

required

integer format: int64

**min**

required

integer format: int64

**options**

Array<object> | null

object

**label**

required

string

**storage**

string

**value**

required

integer format: int64

**visible**

required

boolean

**zone\_commands**

Array<object> | null

object

**arguments**

required

Array<object> | null

\>= 3 items <= 3 items

object

**bounds**

object

**max**

required

integer format: int64

**min**

required

integer format: int64

**control**

required

string

**key**

required

string

**label**

required

string

**options**

Array<object> | null

object

**label**

required

string

**storage**

string

**value**

required

integer format: int64

**visible**

required

boolean

**command**

required

string

**label**

required

string

#### Example generated

```
{  "actions": [    {      "allowed": true,      "key": "example",      "label": "example",      "required_label": "example",      "required_level": 1    }  ],  "applies": {    "add_operation": "example",    "max": 1,    "options": [      {        "label": "example",        "storage": "example",        "value": 1      }    ],    "remove_operation": "example"  },  "bespoke": [    "example"  ],  "exits": {    "directions": [      "example"    ],    "door_options": [      {        "label": "example",        "storage": "example",        "value": 1      }    ]  },  "fields": [    {      "bounds": {        "max": 1,        "min": 1      },      "control": "example",      "key": "example",      "label": "example",      "options": [        {          "label": "example",          "storage": "example",          "value": 1        }      ]    }  ],  "kind": "example",  "value_matrix": [    {      "item_type": 1,      "item_type_label": "example",      "values": [        {          "control": "example",          "label": "example",          "max": 1,          "min": 1,          "options": [            {              "label": "example",              "storage": "example",              "value": 1            }          ],          "visible": true        }      ]    }  ],  "zone_commands": [    {      "arguments": [        {          "bounds": {            "max": 1,            "min": 1          },          "control": "example",          "key": "example",          "label": "example",          "options": [            {              "label": "example",              "storage": "example",              "value": 1            }          ],          "visible": true        }      ],      "command": "example",      "label": "example"    }  ]}
```

### default

Error

application/problem+json

object

**detail**

A human-readable explanation specific to this occurrence of the problem.

string

**errors**

Optional list of individual error details

Array<object> | null

object

**location**

Where the error occurred, e.g. ‘body.items\[3\].tags’ or ‘path.thing-id’

string

**message**

Error message text

string

**value**

The value at the given location

**instance**

A URI reference that identifies the specific occurrence of the problem.

string format: uri

**status**

HTTP status code

integer format: int64

**title**

A short, human-readable summary of the problem type. This value should not change between occurrences of the error.

string

**type**

A URI reference to human-readable documentation for the error.

string format: uri

default: about:blank

#### Example

```
{  "detail": "Property foo is required but is missing.",  "instance": "https://example.com/error-log/abc123",  "status": 400,  "title": "Bad Request",  "type": "about:blank"}
```
