Virtru policy.kasregistry.KeyAccessServerRegistryService API
The policy.kasregistry.KeyAccessServerRegistryService API from Virtru — 14 operation(s) for policy.kasregistry.keyaccessserverregistryservice.
The policy.kasregistry.KeyAccessServerRegistryService API from Virtru — 14 operation(s) for policy.kasregistry.keyaccessserverregistryservice.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/virtru-policy-kasregistry-keyaccessserverregistryservice-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: authorization authorization.AuthorizationService Policy.kasregistry.Key Access Server Registry Service API
servers:
- url: https://api.virtru.com
description: Base URL declared by the provider in apis.yml (roadmap#122).
security: []
tags:
- name: policy.kasregistry.KeyAccessServerRegistryService
paths:
/policy.kasregistry.KeyAccessServerRegistryService/ListKeyAccessServers:
post:
tags:
- policy.kasregistry.KeyAccessServerRegistryService
summary: ListKeyAccessServers
operationId: policy.kasregistry.KeyAccessServerRegistryService.ListKeyAccessServers
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.ListKeyAccessServersRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.ListKeyAccessServersResponse'
/policy.kasregistry.KeyAccessServerRegistryService/GetKeyAccessServer:
post:
tags:
- policy.kasregistry.KeyAccessServerRegistryService
summary: GetKeyAccessServer
operationId: policy.kasregistry.KeyAccessServerRegistryService.GetKeyAccessServer
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.GetKeyAccessServerRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.GetKeyAccessServerResponse'
/policy.kasregistry.KeyAccessServerRegistryService/CreateKeyAccessServer:
post:
tags:
- policy.kasregistry.KeyAccessServerRegistryService
summary: CreateKeyAccessServer
operationId: policy.kasregistry.KeyAccessServerRegistryService.CreateKeyAccessServer
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.CreateKeyAccessServerRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.CreateKeyAccessServerResponse'
/policy.kasregistry.KeyAccessServerRegistryService/UpdateKeyAccessServer:
post:
tags:
- policy.kasregistry.KeyAccessServerRegistryService
summary: UpdateKeyAccessServer
operationId: policy.kasregistry.KeyAccessServerRegistryService.UpdateKeyAccessServer
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.UpdateKeyAccessServerRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.UpdateKeyAccessServerResponse'
/policy.kasregistry.KeyAccessServerRegistryService/DeleteKeyAccessServer:
post:
tags:
- policy.kasregistry.KeyAccessServerRegistryService
summary: DeleteKeyAccessServer
operationId: policy.kasregistry.KeyAccessServerRegistryService.DeleteKeyAccessServer
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.DeleteKeyAccessServerRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.DeleteKeyAccessServerResponse'
/policy.kasregistry.KeyAccessServerRegistryService/ListKeyAccessServerGrants:
post:
tags:
- policy.kasregistry.KeyAccessServerRegistryService
summary: ListKeyAccessServerGrants
description: Deprecated
operationId: policy.kasregistry.KeyAccessServerRegistryService.ListKeyAccessServerGrants
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.ListKeyAccessServerGrantsRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.ListKeyAccessServerGrantsResponse'
deprecated: true
/policy.kasregistry.KeyAccessServerRegistryService/CreateKey:
post:
tags:
- policy.kasregistry.KeyAccessServerRegistryService
summary: CreateKey
description: "KAS Key Management\n Request to create a new key in the Key Access Service."
operationId: policy.kasregistry.KeyAccessServerRegistryService.CreateKey
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.CreateKeyRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.CreateKeyResponse'
/policy.kasregistry.KeyAccessServerRegistryService/GetKey:
post:
tags:
- policy.kasregistry.KeyAccessServerRegistryService
summary: GetKey
description: Request to retrieve a key from the Key Access Service.
operationId: policy.kasregistry.KeyAccessServerRegistryService.GetKey
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.GetKeyRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.GetKeyResponse'
/policy.kasregistry.KeyAccessServerRegistryService/ListKeys:
post:
tags:
- policy.kasregistry.KeyAccessServerRegistryService
summary: ListKeys
description: Request to list keys in the Key Access Service.
operationId: policy.kasregistry.KeyAccessServerRegistryService.ListKeys
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.ListKeysRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.ListKeysResponse'
/policy.kasregistry.KeyAccessServerRegistryService/UpdateKey:
post:
tags:
- policy.kasregistry.KeyAccessServerRegistryService
summary: UpdateKey
description: Request to update a key in the Key Access Service.
operationId: policy.kasregistry.KeyAccessServerRegistryService.UpdateKey
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.UpdateKeyRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.UpdateKeyResponse'
/policy.kasregistry.KeyAccessServerRegistryService/RotateKey:
post:
tags:
- policy.kasregistry.KeyAccessServerRegistryService
summary: RotateKey
description: Request to rotate a key in the Key Access Service.
operationId: policy.kasregistry.KeyAccessServerRegistryService.RotateKey
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.RotateKeyRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.RotateKeyResponse'
/policy.kasregistry.KeyAccessServerRegistryService/SetBaseKey:
post:
tags:
- policy.kasregistry.KeyAccessServerRegistryService
summary: SetBaseKey
description: Request to set the default a default kas key.
operationId: policy.kasregistry.KeyAccessServerRegistryService.SetBaseKey
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.SetBaseKeyRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.SetBaseKeyResponse'
/policy.kasregistry.KeyAccessServerRegistryService/GetBaseKey:
post:
tags:
- policy.kasregistry.KeyAccessServerRegistryService
summary: GetBaseKey
description: Get Default kas keys
operationId: policy.kasregistry.KeyAccessServerRegistryService.GetBaseKey
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.GetBaseKeyRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.GetBaseKeyResponse'
/policy.kasregistry.KeyAccessServerRegistryService/ListKeyMappings:
post:
tags:
- policy.kasregistry.KeyAccessServerRegistryService
summary: ListKeyMappings
description: Request to list key mappings in the Key Access Service.
operationId: policy.kasregistry.KeyAccessServerRegistryService.ListKeyMappings
parameters:
- name: Connect-Protocol-Version
in: header
required: true
schema:
$ref: '#/components/schemas/connect-protocol-version'
- name: Connect-Timeout-Ms
in: header
schema:
$ref: '#/components/schemas/connect-timeout-header'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.ListKeyMappingsRequest'
required: true
responses:
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/connect.error'
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/policy.kasregistry.ListKeyMappingsResponse'
components:
schemas:
policy.kasregistry.MappedPolicyObject:
type: object
properties:
id:
type: string
title: id
description: The unique identifier of the policy object
fqn:
type: string
title: fqn
description: The fully qualified name of the policy object
title: MappedPolicyObject
additionalProperties: false
policy.kasregistry.UpdateKeyAccessServerResponse:
type: object
properties:
keyAccessServer:
title: key_access_server
$ref: '#/components/schemas/policy.KeyAccessServer'
title: UpdateKeyAccessServerResponse
additionalProperties: false
policy.KasKey:
type: object
properties:
kasId:
type: string
title: kas_id
key:
title: key
$ref: '#/components/schemas/policy.AsymmetricKey'
kasUri:
type: string
title: kas_uri
title: KasKey
additionalProperties: false
policy.kasregistry.KasKeyIdentifier:
type: object
oneOf:
- properties:
kasId:
type: string
title: kas_id
format: uuid
title: kas_id
required:
- kasId
- properties:
name:
type: string
title: name
minLength: 1
title: name
required:
- name
- properties:
uri:
type: string
title: uri
minLength: 1
format: uri
title: uri
required:
- uri
properties:
kid:
type: string
title: kid
minLength: 1
description: Required Key ID of the key in question
title: KasKeyIdentifier
additionalProperties: false
description: Nested message for specifying the active key using KAS ID and Key ID
policy.SimpleKasKey:
type: object
properties:
kasUri:
type: string
title: kas_uri
description: The URL of the Key Access Server
publicKey:
title: public_key
description: The public key of the Key that belongs to the KAS
$ref: '#/components/schemas/policy.SimpleKasPublicKey'
kasId:
type: string
title: kas_id
description: The ID of the Key Access Server
title: SimpleKasKey
additionalProperties: false
google.protobuf.Any:
type: object
properties:
type:
type: string
value:
type: string
format: binary
debug:
type: object
additionalProperties: true
additionalProperties: true
description: Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.
policy.SourceType:
type: string
title: SourceType
enum:
- SOURCE_TYPE_UNSPECIFIED
- SOURCE_TYPE_INTERNAL
- SOURCE_TYPE_EXTERNAL
description: "Describes whether this kas is managed by the organization or if they imported\n the kas information from an external party. These two modes are necessary in order\n to encrypt a tdf dek with an external parties kas public key."
policy.kasregistry.DeleteKeyAccessServerRequest:
type: object
properties:
id:
type: string
title: id
format: uuid
description: Required
title: DeleteKeyAccessServerRequest
additionalProperties: false
policy.kasregistry.GetBaseKeyResponse:
type: object
properties:
baseKey:
title: base_key
description: The current base key
$ref: '#/components/schemas/policy.SimpleKasKey'
title: GetBaseKeyResponse
additionalProperties: false
policy.kasregistry.SetBaseKeyResponse:
type: object
properties:
newBaseKey:
title: new_base_key
description: The key that was set as base
$ref: '#/components/schemas/policy.SimpleKasKey'
previousBaseKey:
title: previous_base_key
description: The previous base key, if any
$ref: '#/components/schemas/policy.SimpleKasKey'
title: SetBaseKeyResponse
additionalProperties: false
policy.PrivateKeyCtx:
type: object
properties:
keyId:
type: string
title: key_id
minLength: 1
description: Required Key ID for the symmetric key wrapping this key.
wrappedKey:
type: string
title: wrapped_key
description: Optional Base64 encoded wrapped key. Conditionally required if key_mode is LOCAL. Should not be present if key_mode is REMOTE.
title: PrivateKeyCtx
additionalProperties: false
policy.kasregistry.KasKeysSort:
type: object
properties:
field:
title: field
$ref: '#/components/schemas/policy.kasregistry.SortKasKeysType'
direction:
title: direction
$ref: '#/components/schemas/policy.SortDirection'
title: KasKeysSort
additionalProperties: false
policy.kasregistry.ListKeysResponse:
type: object
properties:
kasKeys:
type: array
items:
$ref: '#/components/schemas/policy.KasKey'
title: kas_keys
description: The list of kas keys
pagination:
title: pagination
description: Pagination response for the list of keys
$ref: '#/components/schemas/policy.PageResponse'
title: ListKeysResponse
additionalProperties: false
description: Response to a ListKeysRequest, containing the list of asymmetric keys and pagination information
policy.kasregistry.CreateKeyResponse:
type: object
properties:
kasKey:
title: kas_key
description: The created asymmetric key for a KAS.
$ref: '#/components/schemas/policy.KasKey'
title: CreateKeyResponse
additionalProperties: false
description: Response to a CreateKeyRequest, containing the created asymmetric key
policy.kasregistry.UpdateKeyRequest:
type: object
properties:
id:
type: string
title: id
format: uuid
description: Required The unique identifier of the key to update
metadata:
title: metadata
description: "Optional\n Common metadata Mutable metadata for the key"
$ref: '#/components/schemas/common.MetadataMutable'
metadataUpdateBehavior:
title: metadata_update_behavior
description: The behavior for updating the metadata
$ref: '#/components/schemas/common.MetadataUpdateEnum'
title: UpdateKeyRequest
additionalProperties: false
description: 'Update an existing asymmetric key in the Key Management System
Metadata update behavior must be either APPEND or REPLACE, when updating metadata.:
```
((!has(this.metadata)) || (has(this.metadata) && this.metadata_update_behavior != 0))
```
'
policy.kasregistry.SortKeyAccessServersType:
type: string
title: SortKeyAccessServersType
enum:
- SORT_KEY_ACCESS_SERVERS_TYPE_UNSPECIFIED
- SORT_KEY_ACCESS_SERVERS_TYPE_NAME
- SORT_KEY_ACCESS_SERVERS_TYPE_URI
- SORT_KEY_ACCESS_SERVERS_TYPE_CREATED_AT
- SORT_KEY_ACCESS_SERVERS_TYPE_UPDATED_AT
policy.KeyStatus:
type: string
title: KeyStatus
enum:
- KEY_STATUS_UNSPECIFIED
- KEY_STATUS_ACTIVE
- KEY_STATUS_ROTATED
description: The status of the key
policy.kasregistry.ListKeyAccessServersResponse:
type: object
properties:
keyAccessServers:
type: array
items:
$ref: '#/components/schemas/policy.KeyAccessServer'
title: key_access_servers
pagination:
title: pagination
$ref: '#/components/schemas/policy.PageResponse'
title: ListKeyAccessServersResponse
additionalProperties: false
policy.kasregistry.UpdateKeyResponse:
type: object
properties:
kasKey:
title: kas_key
description: The updated kas key
$ref: '#/components/schemas/policy.KasKey'
title: UpdateKeyResponse
additionalProperties: false
description: Response to an UpdateKeyRequest, containing the updated asymmetric key
policy.kasregistry.GrantedPolicyObject:
type: object
properties:
id:
type: string
title: id
fqn:
type: string
title: fqn
title: GrantedPolicyObject
additionalProperties: false
description: Can be namespace, attribute definition, or value
policy.KeyAccessServer:
type: object
properties:
id:
type: string
title: id
uri:
type: string
title: uri
description: 'Address of a KAS instance
URI must be a valid URL (e.g., ''https://demo.com/'') followed by additional segments. Each segment must start and end with an alphanumeric character, can contain hyphens, alphanumeric characters, and slashes.:
```
this.matches(''^https?://[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?(\\.[a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?)*(:[0-9]+)?(/.*)?$'')
```
'
publicKey:
title: public_key
description: 'Deprecated: KAS can have multiple key pairs'
$ref: '#/components/schemas/policy.PublicKey'
sourceType:
title: source_type
description: 'The source of the KAS: (INTERNAL, EXTERNAL)'
$ref: '#/components/schemas/policy.SourceType'
kasKeys:
type: array
items:
$ref: '#/components/schemas/policy.SimpleKasKey'
title: kas_keys
description: Kas keys associated with this KAS
name:
type: string
title: name
description: "Optional\n Unique name of the KAS instance"
metadata:
title: metadata
description: Common metadata
$ref: '#/components/schemas/common.Metadata'
title: KeyAccessServer
additionalProperties: false
description: Key Access Server Registry
policy.kasregistry.GetKeyAccessServerRequest:
type: object
oneOf:
- properties:
kasId:
type: string
title: kas_id
format: uuid
description: 'option (buf.validate.oneof).required = true; // TODO: enable this when we remove the deprecated field'
title: kas_id
required:
- kasId
- properties:
name:
type: string
title: name
minLength: 1
title: name
required:
- name
- properties:
uri:
type: string
title: uri
minLength: 1
format: uri
title: uri
required:
- uri
properties:
id:
type: string
title: id
format: uuid
description: Deprecated
deprecated: true
title: GetKeyAccessServerRequest
additionalProperties: false
description: 'Either use deprecated ''id'' field or one of ''kas_id'' or ''uri'', but not both:
```
!(has(this.id) && (has(this.kas_id) || has(this.uri) || has(this.name)))
```
Either id or one of kas_id or uri must be set:
```
has(this.id) || has(this.kas_id) || has(this.uri) || has(this.name)
```
'
policy.kasregistry.DeleteKeyAccessServerResponse:
type: object
properties:
keyAccessServer:
title: key_access_server
$ref: '#/components/schemas/policy.KeyAccessServer'
title: DeleteKeyAccessServerResponse
additionalProperties: false
policy.kasregistry.CreateKeyAccessServerRequest:
type: object
properties:
uri:
type: string
title: uri
description: 'Required
URI must be a valid URL (e.g., ''https://demo.com/'') followed by additional segments. Each segment must start and end with an alphanumeric character, can contain hyphens, alphanumeric characters, and slashes.:
```
this.isUri()
```
'
publicKey:
title: public_key
description: Deprecated
$ref: '#/components/schemas/policy.PublicKey'
sourceType:
title: source_type
description: Optional
$ref: '#/components/schemas/policy.SourceType'
name:
type: string
title: name
maxLength: 253
description: 'Optional
Registered KAS name must be an alphanumeric string, allowing hyphens, and underscores but not as the first or last character. The stored KAS name will be normalized to lower case.:
```
size(this) > 0 ? this.matches(''^[a-zA-Z0-9](?:[a-zA-Z0-9_-]*[a-zA-Z0-9])?$'') : true
```
'
metadata:
title: metadata
description: Common metadata
$ref: '#/components/schemas/common.MetadataMutable'
title: CreateKeyAccessServerRequest
additionalProperties: false
policy.SortDirection:
type: string
title: SortDirection
enum:
- SORT_DIRECTION_UNSPECIFIED
- SORT_DIRECTION_ASC
- SORT_DIRECTION_DESC
description: "Sorting direction shared across list APIs.\n When the 'sort' field is omitted or the chosen sort 'field' is UNSPECIFIED,\n the endpoint's request message defines the default ordering; see the\n specific List* request docs."
policy.SimpleKasPublicKey:
type: object
properties:
algorithm:
title: algorithm
$ref: '#/components/schemas/policy.Algorithm'
kid:
type: string
title: kid
pem:
type: string
title: pem
title: SimpleKasPublicKey
additionalProperties: false
policy.KeyProviderConfig:
type: object
properties:
id:
type: string
title: id
name:
type: string
title: name
configJson:
type: string
title: config_json
format: byte
manager:
type: string
title: manager
metadata:
title: metadata
description: Common metadata
$ref: '#/components/schemas/common.Metadata'
title: KeyProviderConfig
additionalProperties: false
connect-timeout-header:
type: number
title: Connect-Timeout-Ms
description: Define the timeout, in ms
policy.kasregistry.ChangeMappings:
type: object
properties:
id:
type: string
title: id
fqn:
type: string
title: fqn
title: ChangeMappings
additionalProperties: false
description: "*\n Simplified information about the resources that were rotated as part of the key rotation process."
policy.kasregistry.ListKeyAccessServersRequest:
type: object
properties:
pagination:
title: pagination
description: Optional
$ref: '#/components/schemas/policy.PageReque
# --- truncated at 32 KB (66 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/virtru/refs/heads/main/openapi/virtru-policy-kasregistry-keyaccessserverregistryservice-api-openapi.yml