openapi: 3.0.0 servers: - url: https://api.enterprise.apigee.com/v1 info: title: Key value maps API description: >- Manage the Apigee Edge key value store for longer-term data persistence. Key value maps (KVMs) are collections of arbitrary name/value pairs ("entries") that can be accessed at runtime by API proxies, or for other custom runtime requirements. The API lets you perform CRUD operations on the key value store. You can create and manage KVMs at multiple scopes: * **API proxy**: KVMs at the API proxy scope can be accessed only by the API proxy or a specific revision of the proxy. * **Environment**: KVMs at the environment scope can be accessed by any API proxy in the environment (such as `test` or `prod`). In the Edge UI, KVMs are configured at the environment scope (**APIs > Environments > Key Value Maps**). * **Organization**: KVMs at the organization scope can be accessed by all API proxies in all environments. API proxies interact with the key value store at runtime using policies. See KeyValueMapOperations policy. version: '1.0' security: - Basic: [] - OAuth: [] paths: "/organizations/{org_name}/apis/{api_name}/keyvaluemaps": post: tags: ["Key Value Map"] summary: Create key value map in an API proxy description: >- Creates a key value map (KVM) for an API proxy. A KVM is a simple structure for persistently storing name/value pairs as entries in a named map. The entries in a KVM can be retrieved at runtime by the KeyValueMapOperations policy or code running on Apigee Edge. Use KVMs for use cases such as profile-based access control, storing environment-specific data, to control application-specific behavior, and so on. You can create an encrypted KVM by adding `"encrypted" : "true"` to the request payload. You update encrypted KVMs the same way you update non-encrypted KVMs. KVM names are case sensitive. **Note**: KVMs created at the API proxy scope do not appear in the Edge UI. Only KVMs created at the environment scope apear in the Edge UI. To view the KVMs defined at the API proxy scope, see List key value maps for an API proxy. For information on retrieving KVMs, see KeyValueMapOperations policy. operationId: 'createKVMAPIProxy' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/api_name' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm '400': description: Bad request requestBody: content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm get: tags: ["Key Value Map"] summary: List key value maps for an API proxy description: >- Lists the key value maps (KVMs) for an API proxy. operationId: 'listKVMsAPIProxy' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/api_name' - $ref: '#/components/parameters/expand' responses: '200': description: OK content: application/json: schema: type: array items: type: string '400': description: Bad request "/organizations/{org_name}/apis/{api_name}/keyvaluemaps/{map_name}": delete: tags: ["Key Value Map"] summary: Delete key value map from an API proxy description: >- Deletes a key value map (KVM) from an API proxy. KVM names are case sensitive. operationId: 'deleteKVMAPIProxy' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/api_name' - $ref: '#/components/parameters/map_name' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: mykvm '400': description: Bad request get: tags: ["Key Value Map"] summary: Get key value map in an API proxy description: >- Gets a key value map (KVM) in an API proxy, including the keys and values. KVM names are case sensitive. With **Apigee Edge for Public Cloud**, the maximum number of KVM entries returned is 1000. operationId: 'getKVMAPIProxy' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/api_name' - $ref: '#/components/parameters/map_name' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm '400': description: Bad request "/organizations/{org_name}/apis/{api_name}/keyvaluemaps/{map_name}/entries": post: tags: ["Key Value Map"] summary: Create an entry in an API proxy-scoped KVM description: >- Creates an entry in an existing key value map (KVM) scoped to an API proxy. A key entry cannot be larger than 2 KB. KVM names are case sensitive. **Note**: **Apigee Edge for the Public Cloud only**. operationId: 'createKVMEntryAPIProxy' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/api_name' - $ref: '#/components/parameters/map_name' responses: '200': description: OK content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue '400': description: Bad request requestBody: content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue "/organizations/{org_name}/apis/{api_name}/keyvaluemaps/{map_name}/entries/{entry_name}": post: tags: ["Key Value Map"] summary: Update an entry in an API proxy-scoped KVM description: >- Updates an entry in a key value map (KVM) scoped to an API proxy. **Note**: **Apigee Edge for the Public Cloud only**. A key cannot be larger than 2 KB. KVM names are case sensitive. This method does not override the existing map. Instead, it updates the entries if they exist, or adds them if they do no exist. It can take several minutes before the new value is visible to runtime traffic. For `entry_name`, use the key. operationId: 'updateKVMEntryAPIProxy' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/api_name' - $ref: '#/components/parameters/map_name' - $ref: '#/components/parameters/entry_name' responses: '200': description: OK content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue '400': description: Bad request requestBody: content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue get: tags: ["Key Value Map"] summary: Get a key's value in an API proxy-scoped key value map description: >- Gets the value of a key in an API proxy-scoped key value map (KVM). KVM names are case sensitive. operationId: 'getKVMEntryAPIProxy' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/api_name' - $ref: '#/components/parameters/map_name' - $ref: '#/components/parameters/entry_name' responses: '200': description: OK content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue '400': description: Bad request delete: tags: ["Key Value Map"] summary: Delete an entry from an API-proxy scoped key value map description: >- Deletes an entry from an API proxy-scoped key value map (KVM) along with its associated entries. KVM names are case sensitive. operationId: 'deleteKVMEntryAPIProxy' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/api_name' - $ref: '#/components/parameters/map_name' - $ref: '#/components/parameters/entry_name' responses: '200': description: OK content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue '400': description: Bad request "/organizations/{org_name}/apis/{api_name}/keyvaluemaps/{map_name}/keys": get: tags: ["Key Value Map"] summary: List keys in an API proxy key value map description: >- Lists keys in a key value map (KVM) scoped to an API proxy. KVM names are case sensitive. **Note**: **Apigee Edge for Public Cloud only**. * By default, the maximum number of keys returned is 100. You can increase this to a maximum of 1000 using the count query parameter. * Paginate the list of keys returned using the `startkey` and `count` query parameters. * You can also create and manage environment-scoped key value maps in the management UI. For more information, see Creating and editing environment key value maps. operationId: 'listKeysKVMAPIProxy' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/api_name' - $ref: '#/components/parameters/map_name' - $ref: '#/components/parameters/count' - $ref: '#/components/parameters/startkey' responses: '200': description: OK content: application/json: schema: type: array items: type: string '400': description: Bad request "/organizations/{org_name}/apis/{api_name}/revisions/{revision_number}/keyvaluemaps": post: tags: ["Key Value Map"] summary: Create key value map in an API proxy revision description: >- Creates a key value map (KVM) scoped to an API proxy revision. **Note**: **Apigee Edge for Public Cloud only**. operationId: 'createKVMAPIProxyRevision' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/api_name' - $ref: '#/components/parameters/revision_number' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm '400': description: Bad request requestBody: content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm "/organizations/{org_name}/apis/{api_name}/revisions/{revision_number}/keyvaluemaps/{map_name}/entries": post: tags: ["Key Value Map"] summary: Create an entry in an API proxy revision-scoped KVM description: >- Creates an entry in an existing key value map (KVM) scoped to an API proxy revision. **Note**: **Apigee Edge for the Public Cloud only**. A key/entry-name cannot be larger than 2 KB. KVM names are case sensitive. operationId: 'createKVMEntryAPIProxyRevision' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/api_name' - $ref: '#/components/parameters/revision_number' - $ref: '#/components/parameters/map_name' responses: '200': description: OK content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue '400': description: Bad request requestBody: content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue "/organizations/{org_name}/apis/{api_name}/revisions/{revision_number}/keyvaluemaps/{map_name}/entries/{entry_name}": post: tags: ["Key Value Map"] summary: Update an entry in an API proxy revision-scoped KVM description: >- Updates an entry in a key value map (KVM) scoped to an API proxy revision. **Note**: **Apigee Edge for the Public Cloud only**. A key cannot be larger than 2 KB. KVM names are case sensitive. This method does not override the existing map. Instead, it updates the entries if they exist, or adds them if they do not exist. It can take several minutes before the new value is visible to runtime traffic. For `entry_name`, use the key. operationId: 'updateEntryAPIProxyRevision' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/api_name' - $ref: '#/components/parameters/revision_number' - $ref: '#/components/parameters/map_name' - $ref: '#/components/parameters/entry_name' responses: '200': description: OK content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue '400': description: Bad request requestBody: content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue "/organizations/{org_name}/apis/{api_name}/revisions/{revision_number}/keyvaluemaps/{map_name}/keys": get: tags: ["Key Value Map"] summary: List keys in an API proxy revision key value map description: >- Lists keys in a key value map (KVM) scoped to an API proxy revision. KVM names are case sensitive. **Note**: **Apigee Edge for Public Cloud only**. operationId: 'listKVMEntryAPIProxyRevision' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/api_name' - $ref: '#/components/parameters/revision_number' - $ref: '#/components/parameters/map_name' responses: '200': description: OK content: application/json: schema: type: array items: type: string '400': description: Bad request "/organizations/{org_name}/environments/{env_name}/keyvaluemaps": post: tags: ["Key Value Map"] summary: Create key value map in an environment description: >- Creates a key value map (KVM) in an environment. A KVM is a simple structure for persistently storing name/value pairs as entries in a named map. The entries in a KVM can be retrieved at runtime by the KeyValueMapOperations policy or code running on Apigee Edge. Use KVMs for use cases such as profile-based access control, storing environment-specific data, to control application-specific behavior, and so on. You can create an encrypted KVM by adding `"encrypted" : "true"` to the request payload. You update encrypted KVMs the same way you update non-encrypted KVMs. KVM names are case sensitive. **Note**: You can also create and manage environment-scoped KMVs in the Edge UI. For more information, see Creating and editing environment key value maps. For information on retrieving KVMs, see KeyValueMapOperations policy. operationId: 'createKVMEnv' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/env_name' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm '400': description: Bad request requestBody: content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm get: tags: ["Key Value Map"] summary: List key value maps in an Environment description: >- Lists the key value maps (KVMs) for an environment. **Note**: You can also create and manage environment-scoped KVMs in the Edge UI. For more information, see Creating and editing environment key value maps. operationId: 'listKVMsEnv' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/env_name' - $ref: '#/components/parameters/expand' responses: '200': description: OK content: application/json: schema: type: array items: type: string '400': description: Bad request "/organizations/{org_name}/environments/{env_name}/keyvaluemaps/{map_name}": get: tags: ["Key Value Map"] summary: Get key value map in an environment description: >- Gets a key value map (KVM) in an API proxy by name, along with the keys and values. KVM names are case sensitive. **Note**: With Apigee Edge for Public Cloud, the maximum number of KVM entries returned is 1000. You can also create and manage environment-scoped KVMs in the Edge UI. For more information, see Creating and editing environment key value maps. operationId: 'getKVMEnv' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/env_name' - $ref: '#/components/parameters/map_name' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm '400': description: Bad request delete: tags: ["Key Value Map"] summary: Delete key value map from an environment description: >- Deletes a key value map (KVM) and all associated entries from an environment. KVM names are case sensitive. **Note**: You can also create and manage environment-scoped key value maps in the Edge UI. For more information, see Creating and editing environment key value maps. operationId: 'deleteKVMEnv' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/env_name' - $ref: '#/components/parameters/map_name' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: mykvm '400': description: Bad request post: tags: ["Key Value Map"] summary: Update key value map in an environment description: >- Updates an existing key value map (KVM) in an environment. This API does not override the existing map. Instead, this method updates the entries if they exist or adds them if not. It can take several minutes before the new value is visible to runtime traffic. **Notes**: * **Apigee Edge for Private Cloud only**. For Apigee Edge for Public Cloud use Update an entry in an environment-scoped KVM. * You can also create and manage environment-scoped key value maps in the Edge UI. For more information, see Creating and editing environment key value maps. operationId: 'updateKVMEnv' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/env_name' - $ref: '#/components/parameters/map_name' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm '400': description: Bad request requestBody: content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm "/organizations/{org_name}/environments/{env_name}/keyvaluemaps/{map_name}/entries": post: tags: ["Key Value Map"] summary: Create an entry in an environment-scoped KVM description: >- Creates an entry in an existing key value map (KVM) scoped to an environment. A key/entry-name cannot be larger than 2 KB. KVM names are case sensitive. **Notes**: * **Apigee Edge for the Public Cloud only**. * You can also create and manage environment-scoped key value maps in the Edge UI. For more information, see Creating and editing environment key value maps. operationId: 'createEntryKVMEnv' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/env_name' - $ref: '#/components/parameters/map_name' responses: '200': description: OK content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue '400': description: Bad request requestBody: content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue "/organizations/{org_name}/environments/{env_name}/keyvaluemaps/{map_name}/entries/{entry_name}": post: tags: ["Key Value Map"] summary: Update an entry in an environment-scoped KVM description: >- Updates an entry in a key value map scoped to an environment. **Notes**: * **Apigee Edge for the Public Cloud only**. * You can also create and manage environment-scoped key value maps in the management UI. For more information, see Creating and editing environment key value maps. A key cannot be larger than 2 KB. KVM names are case sensitive. This method does not override the existing map. Instead, it updates the entries if they exist, or adds them if they do not exist. It can take several minutes before the new value is visible to runtime traffic. For `entry_name`, use the key. operationId: 'updateEntryKVMEnv' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/env_name' - $ref: '#/components/parameters/map_name' - $ref: '#/components/parameters/entry_name' responses: '200': description: OK content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue '400': description: Bad request requestBody: content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue delete: tags: ["Key Value Map"] summary: Delete an entry from an environment-scoped key value map description: >- Deletes an entry from an environment-scoped key value map (KVM) along with associated entries. KVM names are case sensitive. **Note**: You can also create and manage environment-scoped key value maps in the management UI. For more information, see Creating and editing environment key value maps. operationId: 'deleteEntryKVMEnv' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/env_name' - $ref: '#/components/parameters/map_name' - $ref: '#/components/parameters/entry_name' responses: '200': description: OK content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue '400': description: Bad request get: tags: ["Key Value Map"] summary: Get a the value of a key in an environment-scoped key value map description: Get a key's value in an environment-scoped key value map operationId: 'getKeyKVMEnv' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/env_name' - $ref: '#/components/parameters/map_name' - $ref: '#/components/parameters/entry_name' responses: '200': description: OK '400': description: Bad request "/organizations/{org_name}/environments/{env_name}/keyvaluemaps/{map_name}/keys": get: tags: ["Key Value Map"] summary: List keys in an environment-scoped key value map description: >- Lists keys in a key value map (KVM) scoped to an environment. KVM names are case sensitive. **Notes**: * **Apigee Edge for Public Cloud only**. * By default, the maximum number of keys returned is 100. You can increase this to a maximum of 1000 using the count query parameter. * Paginate the list of keys returned using the `startkey` and `count` query parameters. * You can also create and manage environment-scoped key value maps in the management UI. For more information, see Creating and editing environment key value maps. operationId: 'listKeysKMVEnv' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/env_name' - $ref: '#/components/parameters/map_name' - $ref: '#/components/parameters/count' - $ref: '#/components/parameters/startkey' responses: '200': description: OK content: application/json: schema: type: array items: type: string '400': description: Bad request "/organizations/{org_name}/keyvaluemaps": post: tags: ["Key Value Map"] summary: Create key value map in an organization description: >- Creates a key value map (KVM) in an organization. A KVM is a simple structure for persistently storing name/value pairs as entries in a named map. The entries in a KVM can be retrieved at runtime by the KeyValueMapOperations policy or code running on Apigee Edge. Use KVMs for use cases such as profile-based access control, storing environment-specific data, to control application-specific behavior, and so on. You can create an encrypted KVM by adding `"encrypted" : "true"` to the request payload. You update encrypted KVMs the same way you update non-encrypted KVMs. KVM names are case sensitive. **Note**: KVMs created at the organization scope do not appear in the Edge UI. Only KVMs created at the environment scope apear in the Edge UI. To see the KVMs defined at the organization scope, use the List KVMs for an organization API. For information on retrieving KVMs, see KeyValueMapOperations policy. operationId: 'createKVMOrg' parameters: - $ref: '#/components/parameters/org_name' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm '400': description: Bad request requestBody: content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm get: tags: ["Key Value Map"] summary: List key value maps in an organization description: Lists key value maps in an organization. operationId: 'listKVMsOrg' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/expand' responses: '200': description: OK content: application/json: schema: type: array items: type: string '400': description: Bad request "/organizations/{org_name}/keyvaluemaps/{map_name}": get: tags: ["Key Value Map"] summary: Get key value map in an organization description: Gets a key value map in an organization. operationId: 'getKVMOrg' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/map_name' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm '400': description: Bad request post: tags: ["Key Value Map"] summary: Update key value map in an organization description: >- Updates an existing key value map (KVM) in an environment. This API does not override the existing map. Instead, this method updates the entries if they exist or adds them if not. It can take several minutes before the new value is visible to runtime traffic. **Note**: **Apigee Edge for the Private Cloud only**. For Apigee Edge for the Cloud, update map entries individually instead of in bulk. See Update an entry in an organization-scoped KVM. operationId: 'updateKVMOrg' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/map_name' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm '400': description: Bad request requestBody: content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: keyname value: keyvalue name: mykvm delete: tags: ["Key Value Map"] summary: Delete key value map from an organization description: >- Deletes a key value map (KVM) and all associated entries from an organization. KVM names are case sensitive. operationId: 'deleteKVMOrg' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/map_name' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/KVM' example: encrypted: true entry: - name: mykvm '400': description: Bad request "/organizations/{org_name}/keyvaluemaps/{map_name}/entries": post: tags: ["Key Value Map"] summary: Create a key value entry in an organization-scoped KVM description: >- Creates an entry in an existing key value map (KVM) scoped to an organization. A key/entry-name cannot be larger than 2 KB. KVM names are case sensitive. **Note**: **Apigee Edge for the Public Cloud only**. operationId: 'createEntryKVMOrg' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/map_name' responses: '200': description: OK content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue '400': description: Bad request requestBody: content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue "/organizations/{org_name}/keyvaluemaps/{map_name}/entries/{entry_name}": delete: tags: ["Key Value Map"] summary: Delete an entry from an organization-scoped KVM description: >- Deletes an entry from an organization-scoped key value map (KVM). KVM names are case sensitive. operationId: 'deleteEntryKVMOrg' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/map_name' - $ref: '#/components/parameters/entry_name' responses: '200': description: OK content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue '400': description: Bad request get: tags: ["Key Value Map"] summary: Get the value of a key in an organization-scoped key value map description: >- Gets the value of a key in an organization-scoped key value map (KVM). KVM names are case sensitive. operationId: 'getKeyKVMOrg' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/map_name' - $ref: '#/components/parameters/entry_name' responses: '200': description: OK content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue '400': description: Bad request post: tags: ["Key Value Map"] summary: Update an entry in an organization-scoped KVM description: >- Updates an entry in a key value map scoped to an organization. **Note**: **Apigee Edge for the Public Cloud only**. A key cannot be larger than 2 KB. KVM names are case sensitive. This method does not override the existing map. Instead, it updates the entries if they exist, or adds them if they do not exist. It can take several minutes before the new value is visible to runtime traffic. For `entry_name`, use the key. operationId: 'updateEntryKVMOrg' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/map_name' - $ref: '#/components/parameters/entry_name' responses: '200': description: OK content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue '400': description: Bad request requestBody: content: application/json: schema: type: object properties: name: type: string description: Name of the entry. value: type: string description: Value of the entry. example: name: keyname value: keyvalue "/organizations/{org_name}/keyvaluemaps/{map_name}/keys": get: tags: ["Key Value Map"] summary: List keys in an organization key value map description: >- Lists keys in a key value map (KVM) scoped to an organization. KVM names are case sensitive. **Note**: **Apigee Edge for Public Cloud only**. * By default, the maximum number of keys returned is 100. You can increase this to a maximum of 1000 using the count query parameter. * Paginate the list of keys returned using the `startkey` and `count` query parameters. * You can also create and manage environment-scoped key value maps in the management UI. For more information, see Creating and editing environment key value maps. operationId: 'listKeysKVMOrg' parameters: - $ref: '#/components/parameters/org_name' - $ref: '#/components/parameters/map_name' - $ref: '#/components/parameters/count' - $ref: '#/components/parameters/startkey' responses: '200': description: OK content: application/json: schema: type: array items: type: string '400': description: Bad request components: securitySchemes: Basic: type: http scheme: basic description: >- Multi-factor authentication is not supported. OAuth: type: apiKey name: Authorization in: header description: >- For OAuth, enter the following in the Key field: Bearer %your-token% (see https://docs.apigee.com/api-platform/system-administration/using-oauth2#get-the-tokens) parameters: org_name: in: path name: org_name required: true schema: type: string description: Organization name. env_name: in: path name: env_name required: true schema: type: string description: Environment name. api_name: in: path name: api_name required: true schema: type: string description: API proxy name. revision_number: in: path name: revision_number required: true schema: type: string description: API proxy revision number. map_name: in: path name: map_name required: true schema: type: string description: Key value map name. entry_name: in: path name: entry_name required: true schema: type: string description: Name of the key for the key/value pair. expand: in: query name: expand required: false schema: type: boolean description: "Set to `true` to expand the view of the response. Note: This parameter only applies to Apigee Edge for Private Cloud. It has no effect in Apigee Edge for Public Cloud." startkey: in: query name: startkey required: false schema: type: string description: | Returns a list of keys starting with the specified key. For example, if an unfiltered list includes: - `mykey_12` - `mykey_products` - `ab_test_key` - `user_status` If the startkey is `mykey_products`, the returned list will be: - `ab_test_key` - `user_status` For pagination, start with an empty or missing `startkey`, and then use the last returned value to get the next page of (up to) `count` keys. Repeat until you get an empty array. Note: `/keyvaluemaps/{map_name}/keys` is the only way to get every entry when `/keyvaluemaps/{map_name}` exceeds the 1000 maximim entries returned. The order of keys is stable but does not match the literal key or insertion order. If you add a new entry, the new key can appear anywhere. count: in: query name: count required: false schema: type: integer description: Number of keys to return. By default, the maximum number of keys returned is 100. You can increase this to a maximum of 1000 using the `count` query parameter. Use with the `startkey` parameter to provide more targeted filtering or pagination. schemas: KVMs: type: array description: KVM entries. items: $ref: '#/components/schemas/KVM' KVM: description: KVM entry details. type: object required: - name - entry properties: name: description: >- Name of the KVM. Valid characters include: `A-Z0-9._\-$ %` type: string encrypted: description: Flag that specifies whether the KVM is encrypted. Defaults to `false`. type: boolean entry: type: array description: >- Name/value pairs for the KVM entry that define the data to be stored. Valid characters include: `A-Z0-9._\-$ %` items: type: object properties: name: type: string description: KVM entry name. value: type: string description: KVM entry value.