# Get Category Attribute

Everything about one attribute of the Category definition, the tenant's own or the
platform's, in every language: what it is, what its type carries, where the category form
draws it and what may be changed about it — what a screen editing the attribute loads.
## Response
**200 OK** — the attribute under `value`, in the members a create reports it in: what every
attribute has, and what its type carries in every language — a checklist's `options` with
their `translations`, a table's `templates` and `hasStartingTable`, an image's `sizeVariants`
and `fileNameAttributes`, the `linkingPattern` of an image or a file, a related items
attribute's target and `separator`. Then where the form draws it, `placement` (`null` when
the form does not lay it out), and what may be changed about it, `editability`.
## Example

```http
GET /Metadata/Categories/attributes('cat_boxmaterial') HTTP/1.1
X-API-KEY: your-api-key-here
```

Endpoint: GET /Metadata/Categories/attributes('{attributeId}')
Version: 2.0.0

## Description:

  - `Response` ()
    **200 OK** — the attribute under `value`, in the members a create reports it in: what every
attribute has, and what its type carries in every language — a checklist's `options` with
their `translations`, a table's `templates` and `hasStartingTable`, an image's `sizeVariants`
and `fileNameAttributes`, the `linkingPattern` of an image or a file, a related items
attribute's target and `separator`. Then where the form draws it, `placement` (`null` when
the form does not lay it out), and what may be changed about it, `editability`.

  - `Example` ()
    ```http
GET /Metadata/Categories/attributes('cat_boxmaterial') HTTP/1.1
X-API-KEY: your-api-key-here
```

## Path parameters:

  - `attributeId` (string, required)
    The identifier of the attribute to read, matched exactly

## Header parameters:

  - `X-API-KEY` (string)
    Tenant's API key (required)

## Response 200:

  - `200` (unknown)
    OK

## Response 200 fields (application/json):

  - `@readLink` (string)

  - `@editLink` (string)

  - `@etag` (string)

  - `@navigationLinks` (array)

  - `@navigationLinks.uri` (string)

  - `@associationLinks` (array)

  - `@associationLinks.uri` (string)

  - `@context` (string)

  - `value` (any)

## Response 400:

  - `400` (unknown)
    Bad Request

## Response 400 fields (application/json):

  - `validationFailures` (object)

## Response 401:

  - `401` (unknown)
    Unauthorized

## Response 401 fields (application/json):

  - `message` (string)

  - `request_id` (string)

## Response 403:

  - `403` (unknown)
    Forbidden

## Response 403 fields (application/json):

  - `message` (string)

  - `request_id` (string)

## Response 404:

  - `404` (unknown)
    Not Found

## Response 409:

  - `409` (unknown)
    Conflict

## Response 409 fields (application/json):

  - `error` (string)

## Response 500:

  - `500` (unknown)
    Internal Server Error

## Response 500 fields (application/json):

  - `error` (string)

  - `details` (any)

## Response 200 examples:

  - `A checklist of the tenant's own, with its options in every language` (unknown)

  - `An image with its size variants, file name attributes and linking pattern` (unknown)

  - `A platform attribute the form does not lay out` (unknown)

## Response 404 examples:

  - `No attribute has that identifier` (unknown)

## Response 409 examples:

  - `The form lays the attribute out more than once` (unknown)

