Virtru policy.namespaces.NamespaceService API
The policy.namespaces.NamespaceService API from Virtru — 9 operation(s) for policy.namespaces.namespaceservice.
The policy.namespaces.NamespaceService API from Virtru — 9 operation(s) for policy.namespaces.namespaceservice.
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-namespaces-namespaceservice-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.namespaces.Namespace Service API
servers:
- url: https://api.virtru.com
description: Base URL declared by the provider in apis.yml (roadmap#122).
security: []
tags:
- name: policy.namespaces.NamespaceService
paths:
/policy.namespaces.NamespaceService/GetNamespace:
post:
tags:
- policy.namespaces.NamespaceService
summary: GetNamespace
operationId: policy.namespaces.NamespaceService.GetNamespace
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.namespaces.GetNamespaceRequest'
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.namespaces.GetNamespaceResponse'
/policy.namespaces.NamespaceService/ListNamespaces:
post:
tags:
- policy.namespaces.NamespaceService
summary: ListNamespaces
operationId: policy.namespaces.NamespaceService.ListNamespaces
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.namespaces.ListNamespacesRequest'
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.namespaces.ListNamespacesResponse'
/policy.namespaces.NamespaceService/CreateNamespace:
post:
tags:
- policy.namespaces.NamespaceService
summary: CreateNamespace
operationId: policy.namespaces.NamespaceService.CreateNamespace
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.namespaces.CreateNamespaceRequest'
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.namespaces.CreateNamespaceResponse'
/policy.namespaces.NamespaceService/UpdateNamespace:
post:
tags:
- policy.namespaces.NamespaceService
summary: UpdateNamespace
operationId: policy.namespaces.NamespaceService.UpdateNamespace
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.namespaces.UpdateNamespaceRequest'
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.namespaces.UpdateNamespaceResponse'
/policy.namespaces.NamespaceService/DeactivateNamespace:
post:
tags:
- policy.namespaces.NamespaceService
summary: DeactivateNamespace
operationId: policy.namespaces.NamespaceService.DeactivateNamespace
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.namespaces.DeactivateNamespaceRequest'
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.namespaces.DeactivateNamespaceResponse'
/policy.namespaces.NamespaceService/AssignKeyAccessServerToNamespace:
post:
tags:
- policy.namespaces.NamespaceService
summary: AssignKeyAccessServerToNamespace
description: 'Deprecated: utilize AssignPublicKeyToNamespace'
operationId: policy.namespaces.NamespaceService.AssignKeyAccessServerToNamespace
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.namespaces.AssignKeyAccessServerToNamespaceRequest'
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.namespaces.AssignKeyAccessServerToNamespaceResponse'
deprecated: true
/policy.namespaces.NamespaceService/RemoveKeyAccessServerFromNamespace:
post:
tags:
- policy.namespaces.NamespaceService
summary: RemoveKeyAccessServerFromNamespace
description: 'Deprecated: utilize RemovePublicKeyFromNamespace'
operationId: policy.namespaces.NamespaceService.RemoveKeyAccessServerFromNamespace
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.namespaces.RemoveKeyAccessServerFromNamespaceRequest'
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.namespaces.RemoveKeyAccessServerFromNamespaceResponse'
deprecated: true
/policy.namespaces.NamespaceService/AssignPublicKeyToNamespace:
post:
tags:
- policy.namespaces.NamespaceService
summary: AssignPublicKeyToNamespace
description: "--------------------------------------*\n Namespace <> Key RPCs\n---------------------------------------"
operationId: policy.namespaces.NamespaceService.AssignPublicKeyToNamespace
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.namespaces.AssignPublicKeyToNamespaceRequest'
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.namespaces.AssignPublicKeyToNamespaceResponse'
/policy.namespaces.NamespaceService/RemovePublicKeyFromNamespace:
post:
tags:
- policy.namespaces.NamespaceService
summary: RemovePublicKeyFromNamespace
operationId: policy.namespaces.NamespaceService.RemovePublicKeyFromNamespace
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.namespaces.RemovePublicKeyFromNamespaceRequest'
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.namespaces.RemovePublicKeyFromNamespaceResponse'
components:
schemas:
policy.namespaces.CreateNamespaceRequest:
type: object
properties:
name:
type: string
title: name
maxLength: 253
description: 'Required
Namespace must be a valid hostname. It should include at least one dot, with each segment (label) starting and ending with an alphanumeric character. Each label must be 1 to 63 characters long, allowing hyphens but not as the first or last character. The top-level domain (the last segment after the final dot) must consist of at least two alphabetic characters. The stored namespace will be normalized to lower case.:
```
this.matches(''^([a-zA-Z0-9]([a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])?\\.)+[a-zA-Z]{2,}$'')
```
'
metadata:
title: metadata
description: Optional
$ref: '#/components/schemas/common.MetadataMutable'
title: CreateNamespaceRequest
required:
- name
additionalProperties: false
policy.namespaces.RemoveKeyAccessServerFromNamespaceResponse:
type: object
properties:
namespaceKeyAccessServer:
title: namespace_key_access_server
$ref: '#/components/schemas/policy.namespaces.NamespaceKeyAccessServer'
title: RemoveKeyAccessServerFromNamespaceResponse
additionalProperties: false
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
policy.namespaces.AssignKeyAccessServerToNamespaceRequest:
type: object
properties:
namespaceKeyAccessServer:
title: namespace_key_access_server
$ref: '#/components/schemas/policy.namespaces.NamespaceKeyAccessServer'
title: AssignKeyAccessServerToNamespaceRequest
additionalProperties: false
description: 'Deprecated: utilize AssignPublicKeyToNamespaceRequest'
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.namespaces.GetNamespaceResponse:
type: object
properties:
namespace:
title: namespace
$ref: '#/components/schemas/policy.Namespace'
title: GetNamespaceResponse
additionalProperties: false
policy.namespaces.DeactivateNamespaceResponse:
type: object
title: DeactivateNamespaceResponse
additionalProperties: false
common.ActiveStateEnum:
type: string
title: ActiveStateEnum
enum:
- ACTIVE_STATE_ENUM_UNSPECIFIED
- ACTIVE_STATE_ENUM_ACTIVE
- ACTIVE_STATE_ENUM_INACTIVE
- ACTIVE_STATE_ENUM_ANY
description: 'buflint ENUM_VALUE_PREFIX: to make sure that C++ scoping rules aren''t violated when users add new enum values to an enum in a given package'
policy.namespaces.ListNamespacesResponse:
type: object
properties:
namespaces:
type: array
items:
$ref: '#/components/schemas/policy.Namespace'
title: namespaces
pagination:
title: pagination
$ref: '#/components/schemas/policy.PageResponse'
title: ListNamespacesResponse
additionalProperties: false
policy.namespaces.AssignPublicKeyToNamespaceResponse:
type: object
properties:
namespaceKey:
title: namespace_key
$ref: '#/components/schemas/policy.namespaces.NamespaceKey'
title: AssignPublicKeyToNamespaceResponse
additionalProperties: false
policy.namespaces.NamespaceKey:
type: object
properties:
namespaceId:
type: string
title: namespace_id
format: uuid
description: Required
keyId:
type: string
title: key_id
format: uuid
description: Required (The id from the Asymmetric Key object)
title: NamespaceKey
required:
- namespaceId
- keyId
additionalProperties: false
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.namespaces.SortNamespacesType:
type: string
title: SortNamespacesType
enum:
- SORT_NAMESPACES_TYPE_UNSPECIFIED
- SORT_NAMESPACES_TYPE_NAME
- SORT_NAMESPACES_TYPE_FQN
- SORT_NAMESPACES_TYPE_CREATED_AT
- SORT_NAMESPACES_TYPE_UPDATED_AT
connect-timeout-header:
type: number
title: Connect-Timeout-Ms
description: Define the timeout, in ms
policy.namespaces.UpdateNamespaceResponse:
type: object
properties:
namespace:
title: namespace
$ref: '#/components/schemas/policy.Namespace'
title: UpdateNamespaceResponse
additionalProperties: false
google.protobuf.BoolValue:
type: boolean
description: "Wrapper message for `bool`.\n\n The JSON representation for `BoolValue` is JSON `true` and `false`.\n\n Not recommended for use in new APIs, but still useful for legacy APIs and\n has no plan to be removed."
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.namespaces.AssignKeyAccessServerToNamespaceResponse:
type: object
properties:
namespaceKeyAccessServer:
title: namespace_key_access_server
$ref: '#/components/schemas/policy.namespaces.NamespaceKeyAccessServer'
title: AssignKeyAccessServerToNamespaceResponse
additionalProperties: false
policy.namespaces.ListNamespacesRequest:
type: object
properties:
state:
title: state
description: "Optional\n ACTIVE by default when not specified"
$ref: '#/components/schemas/common.ActiveStateEnum'
pagination:
title: pagination
description: Optional
$ref: '#/components/schemas/policy.PageRequest'
sort:
type: array
items:
$ref: '#/components/schemas/policy.namespaces.NamespacesSort'
title: sort
maxItems: 1
description: "Optional - CONSTRAINT: max 1 item\n Sort defaults:\n - direction UNSPECIFIED defaults to DESC for the specified field\n - field UNSPECIFIED defaults to created_at with the specified direction\n - both UNSPECIFIED or sort omitted defaults to created_at DESC"
search:
title: search
description: Optional
$ref: '#/components/schemas/policy.Search'
title: ListNamespacesRequest
additionalProperties: false
policy.Namespace:
type: object
properties:
id:
type: string
title: id
description: generated uuid in database
name:
type: string
title: name
description: "used to partition Attribute Definitions, support by namespace AuthN and\n enable federation"
fqn:
type: string
title: fqn
active:
title: active
description: active by default until explicitly deactivated
$ref: '#/components/schemas/google.protobuf.BoolValue'
metadata:
title: metadata
$ref: '#/components/schemas/common.Metadata'
grants:
type: array
items:
$ref: '#/components/schemas/policy.KeyAccessServer'
title: grants
description: Deprecated KAS grants for the namespace. Use kas_keys instead.
kasKeys:
type: array
items:
$ref: '#/components/schemas/policy.SimpleKasKey'
title: kas_keys
description: Keys for the namespace
title: Namespace
additionalProperties: false
policy.KasPublicKey:
type: object
properties:
pem:
type: string
title: pem
maxLength: 8192
minLength: 1
description: x509 ASN.1 content in PEM envelope, usually
kid:
type: string
title: kid
maxLength: 32
minLength: 1
description: A unique string identifier for this key
alg:
not:
enum:
- 0
title: alg
description: "A known algorithm type with any additional parameters encoded.\n To start, these may be `rsa:2048` for RSA-based wrapping and\n `ec:secp256r1` for EC-based wrapping, but more formats may be added as needed."
$ref: '#/components/schemas/policy.KasPublicKeyAlgEnum'
title: KasPublicKey
additionalProperties: false
description: "Deprecated\n A KAS public key and some associated metadata for further identifcation"
policy.namespaces.CreateNamespaceResponse:
type: object
properties:
namespace:
title: namespace
$ref: '#/components/schemas/policy.Namespace'
title: CreateNamespaceResponse
additionalProperties: false
google.protobuf.Timestamp:
type: string
examples:
- 1s
- 1.000340012s
format: date-time
description: "A Timestamp represents a point in time independent of any time zone or local\n calendar, encoded as a count of seconds and fractions of seconds at\n nanosecond resolution. The count is relative to an epoch at UTC midnight on\n January 1, 1970, in the proleptic Gregorian calendar which extends the\n Gregorian calendar backwards to year one.\n\n All minutes are 60 seconds long. Leap seconds are \"smeared\" so that no leap\n second table is needed for interpretation, using a [24-hour linear\n smear](https://developers.google.com/time/smear).\n\n The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By\n restricting to that range, we ensure that we can convert to and from [RFC\n 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.\n\n # Examples\n\n Example 1: Compute Timestamp from POSIX `time()`.\n\n Timestamp timestamp;\n timestamp.set_seconds(time(NULL));\n timestamp.set_nanos(0);\n\n Example 2: Compute Timestamp from POSIX `gettimeofday()`.\n\n struct timeval tv;\n gettimeofday(&tv, NULL);\n\n Timestamp timestamp;\n timestamp.set_seconds(tv.tv_sec);\n timestamp.set_nanos(tv.tv_usec * 1000);\n\n Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.\n\n FILETIME ft;\n GetSystemTimeAsFileTime(&ft);\n UINT64 ticks = (((UINT64)ft.dwHighDateTime) << 32) | ft.dwLowDateTime;\n\n // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z\n // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z.\n Timestamp timestamp;\n timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));\n timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));\n\n Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.\n\n long millis = System.currentTimeMillis();\n\n Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000)\n .setNanos((int) ((millis % 1000) * 1000000)).build();\n\n Example 5: Compute Timestamp from Java `Instant.now()`.\n\n Instant now = Instant.now();\n\n Timestamp timestamp =\n Timestamp.newBuilder().setSeconds(now.getEpochSecond())\n .setNanos(now.getNano()).build();\n\n Example 6: Compute Timestamp from current time in Python.\n\n timestamp = Timestamp()\n timestamp.GetCurrentTime()\n\n # JSON Mapping\n\n In JSON format, the Timestamp type is encoded as a string in the\n [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the\n format is \"{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z\"\n where {year} is always expressed using four digits while {month}, {day},\n {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional\n seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution),\n are optional. The \"Z\" suffix indicates the timezone (\"UTC\"); the timezone\n is required. A proto3 JSON serializer should always use UTC (as indicated by\n \"Z\") when printing the Timestamp type and a proto3 JSON parser should be\n able to accept both UTC and other timezones (as indicated by an offset).\n\n For example, \"2017-01-15T01:30:15.01Z\" encodes 15.01 seconds past\n 01:30 UTC on January 15, 2017.\n\n In JavaScript, one can convert a Date object to this format using the\n standard\n [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString)\n method. In Python, a standard `datetime.datetime` object can be converted\n to this format using\n [`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with\n the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use\n the Joda Time's [`ISODateTimeFormat.dateTime()`](\n http://joda-time.sourceforge.net/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()\n ) to obtain a formatter capable of generating timestamps in this format."
connect.error:
type: object
properties:
code:
type: string
examples:
- not_found
enum:
- canceled
- unknown
- invalid_argument
- deadline_exceeded
- not_found
- already_exists
- permission_denied
- resource_exhausted
- failed_precondition
- aborted
- out_of_range
- unimplemented
- internal
- unavailable
- data_loss
- unauthenticated
description: The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
message:
type: string
description: A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
detail:
$ref: '#/components/schemas/google.protobuf.Any'
title: Connect Error
additionalProperties: true
description: 'Error type returned by Connect: https://connectrpc.com/docs/go/errors/#http-representation'
policy.namespaces.RemoveKeyAccessServerFromNamespaceRequest:
type: object
properties:
namespaceKeyAccessServer:
title: namespace_key_access_server
$ref: '#/components/schemas/policy.namespaces.NamespaceKeyAccessServer'
title: RemoveKeyAccessServerFromNamespaceRequest
additionalProperties: false
description: 'Deprecated: utilize RemovePublicKeyFromNamespaceRequest'
policy.PageRequest:
type: object
properties:
limit:
type: integer
title: limit
format: int32
description: "Optional\n Set to configured default limit if not provided\n Maximum limit set in platform config and enforced by services"
offset:
type: integer
title: offset
format: int32
description: "Optional\n Defaulted if not provided"
title: PageRequest
additionalProperties: false
common.MetadataUpdateEnum:
type: string
title: MetadataUpdateEnum
enum:
- METADATA_UPDATE_ENUM_UNSPECIFIED
- METADATA_UPDATE_ENUM_EXTEND
- METADATA_UPDATE_ENUM_REPLACE
policy.KasPublicKeySet:
type: object
properties:
keys:
type: array
items:
$ref: '#/components/schemas/policy.KasPublicKey'
title: keys
title: KasPublicKeySet
additionalProperties: false
description: "Deprecated\n A list of known KAS public keys"
policy.namespaces.RemovePublicKeyFromNamespaceResponse:
type: object
properties:
namespaceKey:
title: namespace_key
$ref: '#/components/schemas/policy.namespaces.NamespaceKey'
title: RemovePublicKeyFromNamespaceResponse
additionalProperties: false
policy.namespaces.AssignPublicKeyToNamespaceRequest:
type: object
properties:
namespaceKey:
title: namespace_key
$ref: '#/components/schemas/policy.namespaces.NamespaceKey'
title: AssignPublicKeyToNamespaceRequest
required:
- namespaceKey
additionalProperties: false
description: Assign Key to Namespace
policy.PublicKey:
type: object
oneOf:
- properties:
cached:
title: cached
description: public key with additional information. Current preferred version
$ref: '#/components/schemas/policy.KasPublicKeySet'
title: cached
required:
- cached
- properties:
remote:
type: string
title: remote
description: 'kas public key url - optional since can also be retrieved via public key
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])?)*(/.*)?$'')
```
'
title: remote
required:
- remote
title: PublicKey
additionalProperties: false
description: Deprecated
policy.namespaces.UpdateNamespaceRequest:
type: object
properties:
id:
type: string
title: id
format: uuid
description: Required
metadata:
title: metadata
description: Optional
$ref: '#/components/schemas/common.MetadataMutable'
metadataUpdateBehavior:
title: metadata_update_behavior
$ref: '#/components/schemas/common.MetadataUpdateEnum'
title: UpdateNamespaceRequest
additionalProperties: false
common.Metadata:
type: object
properties:
createdAt:
title: created_at
description: created_at set by server (entity who created will recorded in an audit event)
$ref: '#/components/schemas/google.protobuf.Timestamp'
updatedAt:
title: updated_at
description: updated_at set by server (entity who updated will recorded in an audit event)
$ref: '#/components/schemas/google.protobuf.Timestamp'
labels:
type: object
title: labels
additionalProperties:
type: string
title: value
description: optional short description
title: Metadata
additionalProperties: false
description: Struct to uniquely identify a resource with optional additional metadata
policy.namespaces.NamespacesSort:
type: object
properties:
field:
title: field
$ref: '#
# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/virtru/refs/heads/main/openapi/virtru-policy-namespaces-namespaceservice-api-openapi.yml