Dictionaries, Hasmaps, Associative Arrays
A dictionary (also known as a map, hashmap or associative array) is a set of key/value pairs. OpenAPI lets you define dictionaries where the keys are strings. To define a dictionary, use type: object and use the additionalProperties keyword to specify the type of values in key/value pairs. For example, a string-to-string dictionary like this:
{
"en": "English",
"fr": "French"
}is defined using the following schema:
type: object
additionalProperties:
type: stringValue Type
The additionalProperties keyword specifies the type of values in the dictionary. Values can be primitives (strings, numbers or boolean values), arrays or objects. For example, a string-to-object dictionary can be defined as follows:
type: object
additionalProperties:
type: object
properties:
code:
type: integer
text:
type: stringInstead of using an inline schema, additionalProperties can $ref another schema:
Free-Form Objects
If the dictionary values can be of any type (aka free-form object), use additionalProperties: true:
This is equivalent to:
Fixed Keys
If a dictionary has some fixed keys, you can define them explicitly as object properties and mark them as required:
Examples of Dictionary Contents
You can use the example keyword to specify sample dictionary contents:
Last updated