---
title: "Get one Dictionary"
method: GET
path: "/organizations/{orgId}/environments/{envId}/dictionaries/{hrid}"
tags: ["Dictionaries"]
---

# Get one Dictionary

`GET /organizations/{orgId}/environments/{envId}/dictionaries/{hrid}`

## Request

- Base URL: `https://eu.cloudgate.gravitee.io/apim/automation`
- URL: `https://eu.cloudgate.gravitee.io/apim/automation/organizations/{orgId}/environments/{envId}/dictionaries/{hrid}`
- Auth: one of:
  - HTTP bearer
  - HTTP basic
  - HTTP bearer

Get an Dictionary using HRID

## Path parameters

- `orgId` string, required
- `envId` string, required
- `hrid` string, required

## Response `200`

Dictionary successfully retrieved

- DictionaryState: Base status properties common to all resources.
  - `hrid` string, required: A unique human readable id identifying this resource
  - `name` string, required: Display name of the dictionary
  - `deployed` boolean, required: If true, a `MANUAL` type dictionary is deployed in the gateway, a `DYNAMIC` type dictionary is started. Changing this value back to false will stop the dictionary or undeploy it.
  - `description` string: Detailed description of the dictionary
  - `type` 'MANUAL' | 'DYNAMIC', required: Type of dictionary. MANUAL is to be updated manually, DYNAMIC is updated and deployed automatically.
  - `manual` ManualDictionarySpec: A manual dictionary with static key/value properties.
    - `properties` object: Dictionary data are key/value pairs for `MANUAL` properties
    - `encryptedProperties` object: Secret properties, keyed by the property key. Their values are write-only: they are never returned, so a client can compare a `GET` against its manifest without seeing a difference on a value it cannot read back. A key must not appear in both `properties` and `encryptedProperties`.
  - `dynamic` DynamicDictionarySpec: A dynamic dictionary populated from an external provider on a schedule.
    - `provider` DictionaryProvider, required: HTTP dictionary provider configuration
      - `type` 'HTTP', required: Type of dictionary provider.
      - `url` string, uri, required: URL of the provider
      - `specification` string, required: Transformation of the returned payload (JOLT Specification)
      - `headers` object[]: HTTP Headers
        - `name` string, required: Header name
        - `value` string, required: Header value
      - `useSystemProxy` boolean
      - `method` 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'HEAD' | 'OPTIONS' | 'TRACE' | 'CONNECT', required
      - `body` string: Optional request payload
    - `trigger` DictionaryTrigger, required: Renewal configuration for a 'DYNAMIC' dictionary
      - `rate` integer, required
      - `unit` 'MICROSECONDS' | 'MILLISECONDS' | 'SECONDS' | 'MINUTES' | 'HOURS' | 'DAYS', required
    - `encryption` DictionaryEncryptionPolicy: Encryption policy applied to a 'DYNAMIC' dictionary's fetched values.
      - `encryptOnFetch` boolean: Encrypt every fetched value instead of relying on per-key classification.
  - `id` string: Resource UUID.
  - `environmentId` string: The environment ID.
  - `organizationId` string: The organization ID.
  - `errors` Errors: When a resource has been created regardless of errors, this field is used to persist the error message encountered during validation
    - `severe` string[]: Severe errors do not pass validation and will block creation/update/delete hence, this field should always be populated during the validation phase and is very unlikely to be persisted client side.
    - `warning` string[]: Warning errors do not block object creation/update/delete, most of the time because the value is ignored or defaulted.

## Other responses

- `401`: Unauthenticated
- `403`: Unauthorized
- `404`: Resource not found
- `default`: Default error

## Changes

- **2026-11-03** `460368511dae`: 2 breaking, 3 info
  - the response property `allOf[#/components/schemas/DictionarySpec]/manual/properties` became optional for the status `200`
  - the `allOf[#/components/schemas/DictionarySpec]/manual` response's property type changed from no type to `object` for status `200`
  - added the optional property `allOf[#/components/schemas/DictionarySpec]/dynamic/encryption` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/DictionarySpec]/manual/encryptedProperties` to the response with the `200` status
  - …1 more
- **2026-10-07** `ecefec7d65f9`: 1 breaking, 2 warning, 2 info
  - the `allOf[#/components/schemas/DictionarySpec]/manual` response's property type changed from `object` to no type for status `200`
  - removed the optional property `allOf[#/components/schemas/DictionarySpec]/dynamic/encryption` from the response with the `200` status
  - removed the optional property `allOf[#/components/schemas/DictionarySpec]/manual/encryptedProperties` from the response with the `200` status
  - the response property `allOf[#/components/schemas/DictionarySpec]/manual/properties` became required for the status `200`
  - …1 more
- **2026-10-07** `38309c3af78d`: 1 info
  - added the optional property `allOf[#/components/schemas/DictionarySpec]/dynamic/encryption` to the response with the `200` status
- …earlier changes not shown

[Operation history](https://skmtc.dev/gravitee-io/apis/gravitee-io-automation-api/changes/organizations/:orgId/environments/:envId/dictionaries/:hrid/get.md)

---

[API](https://skmtc.dev/gravitee-io/apis/gravitee-io-automation-api.md) - [All operations](https://skmtc.dev/gravitee-io/apis/gravitee-io-automation-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gravitee-io/apis/gravitee-io-automation-api/revisions/460368511dae?raw)
