# CustomMetadata

> Interface in domain **Metadata**

- HTML: [CustomMetadata.html](CustomMetadata.html)
- Raw SDL: [CustomMetadata.sdl](CustomMetadata.sdl)
- Covered by: [llms.txt](../llms.txt)

`CustomMetadataInterface` for `CustomMetadata` returnable types.

## Fields

- `property`: `CustomMetadataProperty!` — `CustomMetadataProperty` details.

## Reach via

Example queries that can return this type from the root `Query`.

### `assets › customMetadata`

```graphql
query AssetsCustomMetadata {
  assets(ids: "…") {
    customMetadata {
      __typename
      property {
        name
        id
        createdAt
        defaultValue
        forbiddenDependeePropertyIds
        helpText
        creator {
          __typename
          name
          id
        }
        dependency {
          __typename
          propertyId
          type
          ... on CustomMetadataPropertySelectValueTypeDependencyTypeEquals {
            propertyOptionId
          }
          ... on CustomMetadataPropertySelectValueTypeDependencyTypeOneOf {
            propertyOptionIds
          }
        }
        modifier {
          __typename
          name
          id
        }
        permissions {
          basic { permissionLevel }
          custom { permissionLevel }
        }
        type {
          __typename
          name
          ... on CustomMetadataPropertyTypeCatalog {
            allowedLinkedColumnIds
            allowMultiSelect
          }
        }
      }
      ... on CustomMetadataValue {
        value
      }
      ... on CustomMetadataValues {
        values
      }
    }
  }
}
```

Raw: [`AssetsCustomMetadata.sdl`](../examples/AssetsCustomMetadata.sdl)

### `asset › customMetadata`

```graphql
query AssetCustomMetadata {
  asset(id: "…") {
    customMetadata {
      __typename
      property {
        name
        id
        createdAt
        defaultValue
        forbiddenDependeePropertyIds
        helpText
        creator {
          __typename
          name
          id
        }
        dependency {
          __typename
          propertyId
          type
          ... on CustomMetadataPropertySelectValueTypeDependencyTypeEquals {
            propertyOptionId
          }
          ... on CustomMetadataPropertySelectValueTypeDependencyTypeOneOf {
            propertyOptionIds
          }
        }
        modifier {
          __typename
          name
          id
        }
        permissions {
          basic { permissionLevel }
          custom { permissionLevel }
        }
        type {
          __typename
          name
          ... on CustomMetadataPropertyTypeCatalog {
            allowedLinkedColumnIds
            allowMultiSelect
          }
        }
      }
      ... on CustomMetadataValue {
        value
      }
      ... on CustomMetadataValues {
        values
      }
    }
  }
}
```

Raw: [`AssetCustomMetadata.sdl`](../examples/AssetCustomMetadata.sdl)
