Virtru policy.registeredresources.RegisteredResourcesService API

Registered Resources

Operations 11

POST /policy.registeredresources.RegisteredResourcesService/CreateRegisteredResource CreateRegisteredResource #
POST /policy.registeredresources.RegisteredResourcesService/GetRegisteredResource GetRegisteredResource #
POST /policy.registeredresources.RegisteredResourcesService/ListRegisteredResources ListRegisteredResources #
POST /policy.registeredresources.RegisteredResourcesService/UpdateRegisteredResource UpdateRegisteredResource #
POST /policy.registeredresources.RegisteredResourcesService/DeleteRegisteredResource DeleteRegisteredResource #
POST /policy.registeredresources.RegisteredResourcesService/CreateRegisteredResourceValue CreateRegisteredResourceValue #
POST /policy.registeredresources.RegisteredResourcesService/GetRegisteredResourceValue GetRegisteredResourceValue #
POST /policy.registeredresources.RegisteredResourcesService/GetRegisteredResourceValuesByFQNs GetRegisteredResourceValuesByFQNs #
POST /policy.registeredresources.RegisteredResourcesService/ListRegisteredResourceValues ListRegisteredResourceValues #
POST /policy.registeredresources.RegisteredResourcesService/UpdateRegisteredResourceValue UpdateRegisteredResourceValue #
POST /policy.registeredresources.RegisteredResourcesService/DeleteRegisteredResourceValue DeleteRegisteredResourceValue #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/virtru-policy-registeredresources-registeredresourcesservice-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

virtru-policy-registeredresources-registeredresourcesservice-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: authorization authorization.AuthorizationService Policy.registeredresources.Registered Resources Service API
  description: Registered Resources
servers:
- url: https://api.virtru.com
  description: Base URL declared by the provider in apis.yml (roadmap#122).
security: []
tags:
- name: policy.registeredresources.RegisteredResourcesService
  description: Registered Resources
paths:
  /policy.registeredresources.RegisteredResourcesService/CreateRegisteredResource:
    post:
      tags:
      - policy.registeredresources.RegisteredResourcesService
      summary: CreateRegisteredResource
      operationId: policy.registeredresources.RegisteredResourcesService.CreateRegisteredResource
      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.registeredresources.CreateRegisteredResourceRequest'
        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.registeredresources.CreateRegisteredResourceResponse'
  /policy.registeredresources.RegisteredResourcesService/GetRegisteredResource:
    post:
      tags:
      - policy.registeredresources.RegisteredResourcesService
      summary: GetRegisteredResource
      operationId: policy.registeredresources.RegisteredResourcesService.GetRegisteredResource
      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.registeredresources.GetRegisteredResourceRequest'
        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.registeredresources.GetRegisteredResourceResponse'
  /policy.registeredresources.RegisteredResourcesService/ListRegisteredResources:
    post:
      tags:
      - policy.registeredresources.RegisteredResourcesService
      summary: ListRegisteredResources
      operationId: policy.registeredresources.RegisteredResourcesService.ListRegisteredResources
      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.registeredresources.ListRegisteredResourcesRequest'
        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.registeredresources.ListRegisteredResourcesResponse'
  /policy.registeredresources.RegisteredResourcesService/UpdateRegisteredResource:
    post:
      tags:
      - policy.registeredresources.RegisteredResourcesService
      summary: UpdateRegisteredResource
      operationId: policy.registeredresources.RegisteredResourcesService.UpdateRegisteredResource
      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.registeredresources.UpdateRegisteredResourceRequest'
        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.registeredresources.UpdateRegisteredResourceResponse'
  /policy.registeredresources.RegisteredResourcesService/DeleteRegisteredResource:
    post:
      tags:
      - policy.registeredresources.RegisteredResourcesService
      summary: DeleteRegisteredResource
      operationId: policy.registeredresources.RegisteredResourcesService.DeleteRegisteredResource
      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.registeredresources.DeleteRegisteredResourceRequest'
        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.registeredresources.DeleteRegisteredResourceResponse'
  /policy.registeredresources.RegisteredResourcesService/CreateRegisteredResourceValue:
    post:
      tags:
      - policy.registeredresources.RegisteredResourcesService
      summary: CreateRegisteredResourceValue
      operationId: policy.registeredresources.RegisteredResourcesService.CreateRegisteredResourceValue
      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.registeredresources.CreateRegisteredResourceValueRequest'
        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.registeredresources.CreateRegisteredResourceValueResponse'
  /policy.registeredresources.RegisteredResourcesService/GetRegisteredResourceValue:
    post:
      tags:
      - policy.registeredresources.RegisteredResourcesService
      summary: GetRegisteredResourceValue
      operationId: policy.registeredresources.RegisteredResourcesService.GetRegisteredResourceValue
      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.registeredresources.GetRegisteredResourceValueRequest'
        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.registeredresources.GetRegisteredResourceValueResponse'
  /policy.registeredresources.RegisteredResourcesService/GetRegisteredResourceValuesByFQNs:
    post:
      tags:
      - policy.registeredresources.RegisteredResourcesService
      summary: GetRegisteredResourceValuesByFQNs
      operationId: policy.registeredresources.RegisteredResourcesService.GetRegisteredResourceValuesByFQNs
      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.registeredresources.GetRegisteredResourceValuesByFQNsRequest'
        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.registeredresources.GetRegisteredResourceValuesByFQNsResponse'
  /policy.registeredresources.RegisteredResourcesService/ListRegisteredResourceValues:
    post:
      tags:
      - policy.registeredresources.RegisteredResourcesService
      summary: ListRegisteredResourceValues
      operationId: policy.registeredresources.RegisteredResourcesService.ListRegisteredResourceValues
      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.registeredresources.ListRegisteredResourceValuesRequest'
        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.registeredresources.ListRegisteredResourceValuesResponse'
  /policy.registeredresources.RegisteredResourcesService/UpdateRegisteredResourceValue:
    post:
      tags:
      - policy.registeredresources.RegisteredResourcesService
      summary: UpdateRegisteredResourceValue
      operationId: policy.registeredresources.RegisteredResourcesService.UpdateRegisteredResourceValue
      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.registeredresources.UpdateRegisteredResourceValueRequest'
        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.registeredresources.UpdateRegisteredResourceValueResponse'
  /policy.registeredresources.RegisteredResourcesService/DeleteRegisteredResourceValue:
    post:
      tags:
      - policy.registeredresources.RegisteredResourcesService
      summary: DeleteRegisteredResourceValue
      operationId: policy.registeredresources.RegisteredResourcesService.DeleteRegisteredResourceValue
      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.registeredresources.DeleteRegisteredResourceValueRequest'
        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.registeredresources.DeleteRegisteredResourceValueResponse'
components:
  schemas:
    policy.registeredresources.ListRegisteredResourcesRequest:
      type: object
      properties:
        namespaceId:
          type: string
          title: namespace_id
          format: uuid
        namespaceFqn:
          type: string
          title: namespace_fqn
          minLength: 1
          format: uri
        pagination:
          title: pagination
          description: Optional
          $ref: '#/components/schemas/policy.PageRequest'
        sort:
          type: array
          items:
            $ref: '#/components/schemas/policy.registeredresources.RegisteredResourcesSort'
          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: ListRegisteredResourcesRequest
      additionalProperties: false
    policy.Value:
      type: object
      properties:
        id:
          type: string
          title: id
          description: generated uuid in database
        attribute:
          title: attribute
          $ref: '#/components/schemas/policy.Attribute'
        value:
          type: string
          title: value
        grants:
          type: array
          items:
            $ref: '#/components/schemas/policy.KeyAccessServer'
          title: grants
          description: Deprecated KAS grants for the value. Use kas_keys instead.
        fqn:
          type: string
          title: fqn
        active:
          title: active
          description: active by default until explicitly deactivated
          $ref: '#/components/schemas/google.protobuf.BoolValue'
        subjectMappings:
          type: array
          items:
            $ref: '#/components/schemas/policy.SubjectMapping'
          title: subject_mappings
          description: subject mapping
        kasKeys:
          type: array
          items:
            $ref: '#/components/schemas/policy.SimpleKasKey'
          title: kas_keys
        resourceMappings:
          type: array
          items:
            $ref: '#/components/schemas/policy.ResourceMapping'
          title: resource_mappings
        obligations:
          type: array
          items:
            $ref: '#/components/schemas/policy.Obligation'
          title: obligations
        metadata:
          title: metadata
          description: Common metadata
          $ref: '#/components/schemas/common.Metadata'
      title: Value
      additionalProperties: false
    policy.registeredresources.CreateRegisteredResourceRequest:
      type: object
      properties:
        name:
          type: string
          title: name
          maxLength: 253
          description: 'Required

            Registered Resource Name must be an alphanumeric string, allowing hyphens and underscores but not as the first or last character. The stored name will be normalized to lower case.:

            ```

            this.matches(''^[a-zA-Z0-9](?:[a-zA-Z0-9_-]*[a-zA-Z0-9])?$'')

            ```


            '
        values:
          type: array
          items:
            type: string
            maxLength: 253
            pattern: ^[a-zA-Z0-9](?:[a-zA-Z0-9_-]*[a-zA-Z0-9])?$
            uniqueItems: true
          title: values
          uniqueItems: true
          description: "Optional\n Registered Resource Values (when provided) must be alphanumeric strings, allowing hyphens and underscores but not as the first or last character.\n The stored value will be normalized to lower case."
        namespaceId:
          type: string
          title: namespace_id
          format: uuid
        namespaceFqn:
          type: string
          title: namespace_fqn
          minLength: 1
          format: uri
        metadata:
          title: metadata
          description: "Optional\n Common metadata"
          $ref: '#/components/schemas/common.MetadataMutable'
      title: CreateRegisteredResourceRequest
      required:
      - name
      additionalProperties: false
    policy.registeredresources.GetRegisteredResourceRequest:
      type: object
      oneOf:
      - properties:
          id:
            type: string
            title: id
            format: uuid
        title: id
        required:
        - id
      - properties:
          name:
            type: string
            title: name
            maxLength: 253
            description: 'Registered Resource Name must be an alphanumeric string, allowing hyphens and underscores but not as the first or last character. The stored 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

              ```


              '
        title: name
        required:
        - name
      properties:
        namespaceFqn:
          type: string
          title: namespace_fqn
          minLength: 1
          format: uri
        namespaceId:
          type: string
          title: namespace_id
          format: uuid
      title: GetRegisteredResourceRequest
      additionalProperties: false
    policy.registeredresources.DeleteRegisteredResourceValueResponse:
      type: object
      properties:
        value:
          title: value
          $ref: '#/components/schemas/policy.RegisteredResourceValue'
      title: DeleteRegisteredResourceValueResponse
      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.registeredresources.GetRegisteredResourceResponse:
      type: object
      properties:
        resource:
          title: resource
          $ref: '#/components/schemas/policy.RegisteredResource'
      title: GetRegisteredResourceResponse
      additionalProperties: false
    policy.RequestContext:
      type: object
      properties:
        pep:
          title: pep
          $ref: '#/components/schemas/policy.PolicyEnforcementPoint'
      title: RequestContext
      required:
      - pep
      additionalProperties: false
      description: Holds the context needed for obligation fulfillment
    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.ConditionGroup:
      type: object
      properties:
        conditions:
          type: array
          items:
            $ref: '#/components/schemas/policy.Condition'
          title: conditions
          minItems: 1
        booleanOperator:
          title: boolean_operator
          description: the boolean evaluation type across the conditions
          $ref: '#/components/schemas/policy.ConditionBooleanTypeEnum'
      title: ConditionGroup
      required:
      - booleanOperator
      additionalProperties: false
      description: A collection of Conditions evaluated by the boolean_operator provided
    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.registeredresources.CreateRegisteredResourceResponse:
      type: object
      properties:
        resource:
          title: resource
          $ref: '#/components/schemas/policy.RegisteredResource'
      title: CreateRegisteredResourceResponse
      additionalProperties: false
    policy.registeredresources.GetRegisteredResourceValueRequest:
      type: object
      oneOf:
      - properties:
          fqn:
            type: string
            title: fqn
            minLength: 1
            format: uri
        title: fqn
        required:
        - fqn
      - properties:
          id:
            type: string
            title: id
            format: uuid
        title: id
        required:
        - id
      title: GetRegisteredResourceValueRequest
      additionalProperties: false
    policy.Search:
      type: object
      properties:
        term:
          type: string
          title: term
          maxLength: 253
          minLength: 1
      title: Search
      additionalProperties: false
    policy.registeredresources.SortRegisteredResourcesType:
      type: string
      title: SortRegisteredResourcesType
      enum:
      - SORT_REGISTERED_RESOURCES_TYPE_UNSPECIFIED
      - SORT_REGISTERED_RESOURCES_TYPE_NAME
      - SORT_REGISTERED_RESOURCES_TYPE_CREATED_AT
      - SORT_REGISTERED_RESOURCES_TYPE_UPDATED_AT
    policy.AttributeRuleTypeEnum:
      type: string
      title: AttributeRuleTypeEnum
      enum:
      - ATTRIBUTE_RULE_TYPE_ENUM_UNSPECIFIED
      - ATTRIBUTE_RULE_TYPE_ENUM_ALL_OF
      - ATTRIBUTE_RULE_TYPE_ENUM_ANY_OF
      - ATTRIBUTE_RULE_TYPE_ENUM_HIERARCHY
    policy.RegisteredResourceValue.ActionAttributeValue:
      type: object
      properties:
        id:
          type: string
          title: id
        action:
          title: action
          $ref: '#/components/schemas/policy.Action'
        attributeValue:
          title: attribute_value
          $ref: '#/components/schemas/policy.Value'
        metadata:
          title: metadata
          description: Common metadata
          $ref: '#/components/schemas/common.Metadata'
      title: ActionAttributeValue
      additionalProperties: false
    policy.Attribute:
      type: object
      properties:
        id:
          type: string
          title: id
        namespace:
          title: namespace
          description: namespace of the attribute
          $ref: '#/components/schemas/policy.Namespace'
        name:
          type: string
          title: name
          description: attribute name
        rule:
          title: rule
          description: attribute rule enum
          $ref: '#/components/schemas/policy.AttributeRuleTypeEnum'
        values:
          type: array
          items:
            $ref: '#/components/schemas/policy.Value'
          title: values
        grants:
          type: array
          items:
            $ref: '#/components/schemas/policy.KeyAccessServer'
          title: grants
          description: Deprecated KAS grants for the attribute. Use kas_keys instead.
        fqn:
          type: string
          title: fqn
        active:
          title: active
          description: active by default until explicitly deactivated
          $ref: '#/components/schemas/google.protobuf.BoolValue'
        kasKeys:
          type: array
          items:
            $ref: '#/components/schemas/policy.SimpleKasKey'
          title: kas_keys
          description: Keys associated with the attribute
        allowTraversal:
          title: allow_traversal
          description: "Whether or not we will use the attribute definition during encryption\n if the attribute value is missing."
          $ref: '#/components/schemas/google.protobuf.BoolValue'
        metadata:
          title: metadata
          description: Common metadata
          $ref: '#/components/schemas/common.Metadata'
      title: Attribute
      required:
      - rule
      additionalProperties: false
    policy.ObligationValue:
      type: object
      properties:
        id:
          type: string
          title: id
        obligation:
          title: obligation
          $ref: '#/components/schemas/policy.Obligation'
        value:
          type: string
          title: value
        triggers:
          type: array
          items:
            $ref: '#/components/schemas/policy.ObligationTrigger'
          title: triggers
        fqn:
          type: string
          title: fqn
        metadata:
          title: metadata
          $ref: '#/components/schemas/common.Metadata'
      title: ObligationValue
      additionalProperties: false
    policy.RegisteredResourceValue:
      type: object
      properties:
        id:
          type: string
          title: id
        value:
          type: string
          title: value
        resource:
          title: resource
          $ref: '#/components/schemas/policy.RegisteredResource'
        actionAttributeValues:
          type: array
          items:
            $ref: '#/components/schemas/policy.RegisteredResourceValue.ActionAttributeValue'
          title: action_attribute_values
        fqn:
          type: string
          title: fqn
        metadata:
          title: metadata
          description: Common metadata
          $ref: '#/components/schemas/common.Metadata'
      title: RegisteredResourceValue
      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
    connect-timeout-header:
      type: number
      title: Connect-Timeout-Ms
      description: Define the timeout, in ms
    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.Action.StandardAction:
      type: string
      title: StandardAction
      enum:
      - STANDARD_ACTION_UNSPECIFIED
      - STANDARD_ACTION_DECRYPT
      - STANDARD_ACTION_TRANSMIT
    policy.registeredresources.GetRegisteredResourceValueResponse:
      type: object
      properties:
        value:
          title: value
          $ref: '#/components/schemas/policy.RegisteredResourceValue'
      title: GetRegisteredResourceValueResponse
      additionalProperties: false
    policy.registeredresources.ListRegisteredResourceValuesRequest:
      type: object
      properties:
        resourceId:
          type: string
          title: resource_id
          description: 'Optional

            Optional field must be a valid UUID:

            ```

            size(this) == 0 || this.matches(''[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}'')

            ```


            '
        pagination:
          title: pagination
          description: Optional
          $ref: '#/components/schemas/policy.PageRequest'
      title: ListRegisteredResourceValuesRequest
      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.registeredresources.UpdateRegisteredResourceValueRequest:
      type: object
      properties:
        id:
          type: string
          title: id
          format: uuid
          description: Required
        value:
          type: string
          title: value
          maxLength: 253
          description: 'Optional

            Registered Resource Value must be an alphanumeric string, allowing hyphens and underscores but not as the first or last character. The stored value will be normalized to lower case.:

            ```

            size(this) > 0 ? this.matches(''^[a-zA-Z0-9](?:[a-zA-Z0-9_-]*[a-zA-Z0-9])?$'') : true

            ```


            '
        actionAttributeValues:
          type: array
          items:
            $ref: '#/components/schemas/policy.registeredresources.ActionAttributeValue'
          title: action_attribute_values
          description: "Optional\n Action Attribute Values provided here will replace all existing records in the database. To delete all action attribute values, set this field to an empty list."
        metadata:
          title: metadata
          description: "Optional\n Common metadata"
          $ref: '#/components/schemas/common.MetadataMutable'
        metadataUpdateBehavior:
          title: metadata_update_behavior
          $ref: '#/components/schemas/common.MetadataUpdateEnum'
      title: UpdateRegist

# --- truncated at 32 KB (62 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/virtru/refs/heads/main/openapi/virtru-policy-registeredresources-registeredresourcesservice-api-openapi.yml