Virtru policy.attributes.AttributesService API
/ / Attribute Service /
/ / Attribute Service /
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-attributes-attributesservice-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.attributes.Attributes Service API
description: '/
/ Attribute Service
/'
servers:
- url: https://api.virtru.com
description: Base URL declared by the provider in apis.yml (roadmap#122).
security: []
tags:
- name: policy.attributes.AttributesService
description: '/
/ Attribute Service
/'
paths:
/policy.attributes.AttributesService/ListAttributes:
post:
tags:
- policy.attributes.AttributesService
summary: ListAttributes
description: "--------------------------------------*\n Attribute RPCs\n---------------------------------------"
operationId: policy.attributes.AttributesService.ListAttributes
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.attributes.ListAttributesRequest'
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.attributes.ListAttributesResponse'
/policy.attributes.AttributesService/ListAttributeValues:
post:
tags:
- policy.attributes.AttributesService
summary: ListAttributeValues
description: "Deprecated\n Use GetAttribute"
operationId: policy.attributes.AttributesService.ListAttributeValues
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.attributes.ListAttributeValuesRequest'
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.attributes.ListAttributeValuesResponse'
deprecated: true
/policy.attributes.AttributesService/GetAttribute:
post:
tags:
- policy.attributes.AttributesService
summary: GetAttribute
operationId: policy.attributes.AttributesService.GetAttribute
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.attributes.GetAttributeRequest'
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.attributes.GetAttributeResponse'
/policy.attributes.AttributesService/GetAttributeValuesByFqns:
post:
tags:
- policy.attributes.AttributesService
summary: GetAttributeValuesByFqns
description: "Deprecated: Use GetKeyMappingsByFqns for client-side key splits and\n GetEntitleableAttributesByFqns for server-side entitlement resolution."
operationId: policy.attributes.AttributesService.GetAttributeValuesByFqns
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.attributes.GetAttributeValuesByFqnsRequest'
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.attributes.GetAttributeValuesByFqnsResponse'
deprecated: true
/policy.attributes.AttributesService/GetKeyMappingsByFqns:
post:
tags:
- policy.attributes.AttributesService
summary: GetKeyMappingsByFqns
description: "Returns only key-mapping information (rule and effective KAS keys) for the\n requested attribute value FQNs, for client-side key split construction."
operationId: policy.attributes.AttributesService.GetKeyMappingsByFqns
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.attributes.GetKeyMappingsByFqnsRequest'
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.attributes.GetKeyMappingsByFqnsResponse'
/policy.attributes.AttributesService/GetEntitleableAttributesByFqns:
post:
tags:
- policy.attributes.AttributesService
summary: GetEntitleableAttributesByFqns
description: "Returns only entitlement-relevant information (rule, value identity, ordered\n definition values, and subject mappings) for the requested attribute value\n FQNs, for server-side decisioning / entitlement resolution."
operationId: policy.attributes.AttributesService.GetEntitleableAttributesByFqns
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.attributes.GetEntitleableAttributesByFqnsRequest'
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.attributes.GetEntitleableAttributesByFqnsResponse'
/policy.attributes.AttributesService/CreateAttribute:
post:
tags:
- policy.attributes.AttributesService
summary: CreateAttribute
operationId: policy.attributes.AttributesService.CreateAttribute
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.attributes.CreateAttributeRequest'
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.attributes.CreateAttributeResponse'
/policy.attributes.AttributesService/UpdateAttribute:
post:
tags:
- policy.attributes.AttributesService
summary: UpdateAttribute
operationId: policy.attributes.AttributesService.UpdateAttribute
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.attributes.UpdateAttributeRequest'
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.attributes.UpdateAttributeResponse'
/policy.attributes.AttributesService/DeactivateAttribute:
post:
tags:
- policy.attributes.AttributesService
summary: DeactivateAttribute
operationId: policy.attributes.AttributesService.DeactivateAttribute
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.attributes.DeactivateAttributeRequest'
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.attributes.DeactivateAttributeResponse'
/policy.attributes.AttributesService/GetAttributeValue:
post:
tags:
- policy.attributes.AttributesService
summary: GetAttributeValue
description: "--------------------------------------*\n Value RPCs\n---------------------------------------"
operationId: policy.attributes.AttributesService.GetAttributeValue
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.attributes.GetAttributeValueRequest'
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.attributes.GetAttributeValueResponse'
/policy.attributes.AttributesService/CreateAttributeValue:
post:
tags:
- policy.attributes.AttributesService
summary: CreateAttributeValue
operationId: policy.attributes.AttributesService.CreateAttributeValue
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.attributes.CreateAttributeValueRequest'
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.attributes.CreateAttributeValueResponse'
/policy.attributes.AttributesService/UpdateAttributeValue:
post:
tags:
- policy.attributes.AttributesService
summary: UpdateAttributeValue
operationId: policy.attributes.AttributesService.UpdateAttributeValue
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.attributes.UpdateAttributeValueRequest'
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.attributes.UpdateAttributeValueResponse'
/policy.attributes.AttributesService/DeactivateAttributeValue:
post:
tags:
- policy.attributes.AttributesService
summary: DeactivateAttributeValue
operationId: policy.attributes.AttributesService.DeactivateAttributeValue
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.attributes.DeactivateAttributeValueRequest'
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.attributes.DeactivateAttributeValueResponse'
/policy.attributes.AttributesService/AssignKeyAccessServerToAttribute:
post:
tags:
- policy.attributes.AttributesService
summary: AssignKeyAccessServerToAttribute
description: 'Deprecated: utilize AssignPublicKeyToAttribute'
operationId: policy.attributes.AttributesService.AssignKeyAccessServerToAttribute
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.attributes.AssignKeyAccessServerToAttributeRequest'
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.attributes.AssignKeyAccessServerToAttributeResponse'
deprecated: true
/policy.attributes.AttributesService/RemoveKeyAccessServerFromAttribute:
post:
tags:
- policy.attributes.AttributesService
summary: RemoveKeyAccessServerFromAttribute
description: 'Deprecated: utilize RemovePublicKeyFromAttribute'
operationId: policy.attributes.AttributesService.RemoveKeyAccessServerFromAttribute
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.attributes.RemoveKeyAccessServerFromAttributeRequest'
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.attributes.RemoveKeyAccessServerFromAttributeResponse'
deprecated: true
/policy.attributes.AttributesService/AssignKeyAccessServerToValue:
post:
tags:
- policy.attributes.AttributesService
summary: AssignKeyAccessServerToValue
description: 'Deprecated: utilize AssignPublicKeyToValue'
operationId: policy.attributes.AttributesService.AssignKeyAccessServerToValue
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.attributes.AssignKeyAccessServerToValueRequest'
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.attributes.AssignKeyAccessServerToValueResponse'
deprecated: true
/policy.attributes.AttributesService/RemoveKeyAccessServerFromValue:
post:
tags:
- policy.attributes.AttributesService
summary: RemoveKeyAccessServerFromValue
description: 'Deprecated: utilize RemovePublicKeyFromValue'
operationId: policy.attributes.AttributesService.RemoveKeyAccessServerFromValue
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.attributes.RemoveKeyAccessServerFromValueRequest'
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.attributes.RemoveKeyAccessServerFromValueResponse'
deprecated: true
/policy.attributes.AttributesService/AssignPublicKeyToAttribute:
post:
tags:
- policy.attributes.AttributesService
summary: AssignPublicKeyToAttribute
operationId: policy.attributes.AttributesService.AssignPublicKeyToAttribute
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.attributes.AssignPublicKeyToAttributeRequest'
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.attributes.AssignPublicKeyToAttributeResponse'
/policy.attributes.AttributesService/RemovePublicKeyFromAttribute:
post:
tags:
- policy.attributes.AttributesService
summary: RemovePublicKeyFromAttribute
operationId: policy.attributes.AttributesService.RemovePublicKeyFromAttribute
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.attributes.RemovePublicKeyFromAttributeRequest'
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.attributes.RemovePublicKeyFromAttributeResponse'
/policy.attributes.AttributesService/AssignPublicKeyToValue:
post:
tags:
- policy.attributes.AttributesService
summary: AssignPublicKeyToValue
operationId: policy.attributes.AttributesService.AssignPublicKeyToValue
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.attributes.AssignPublicKeyToValueRequest'
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.attributes.AssignPublicKeyToValueResponse'
/policy.attributes.AttributesService/RemovePublicKeyFromValue:
post:
tags:
- policy.attributes.AttributesService
summary: RemovePublicKeyFromValue
operationId: policy.attributes.AttributesService.RemovePublicKeyFromValue
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.attributes.RemovePublicKeyFromValueRequest'
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.attributes.RemovePublicKeyFromValueResponse'
components:
schemas:
policy.attributes.AssignKeyAccessServerToValueRequest:
type: object
properties:
valueKeyAccessServer:
title: value_key_access_server
description: Required
$ref: '#/components/schemas/policy.attributes.ValueKeyAccessServer'
title: AssignKeyAccessServerToValueRequest
additionalProperties: false
description: 'Deprecated: utilize AssignPublicKeyToValueRequest'
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.attributes.DeactivateAttributeRequest:
type: object
properties:
id:
type: string
title: id
format: uuid
description: Required
title: DeactivateAttributeRequest
additionalProperties: false
policy.attributes.RemovePublicKeyFromValueRequest:
type: object
properties:
valueKey:
title: value_key
description: Required
$ref: '#/components/schemas/policy.attributes.ValueKey'
title: RemovePublicKeyFromValueRequest
required:
- valueKey
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
common.IdFqnIdentifier:
type: object
properties:
id:
type: string
title: id
format: uuid
fqn:
type: string
title: fqn
minLength: 1
format: uri
title: IdFqnIdentifier
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.attributes.GetAttributeValuesByFqnsResponse:
type: object
properties:
fqnAttributeValues:
type: object
title: fqn_attribute_values
additionalProperties:
title: value
$ref: '#/components/schemas/policy.attributes.GetAttributeValuesByFqnsResponse.AttributeAndValue'
description: map of FQNs to complete attributes and the one selected value
title: GetAttributeValuesByFqnsResponse
additionalProperties: false
policy.SubjectMappingOperatorEnum:
type: string
title: SubjectMappingOperatorEnum
enum:
- SUBJECT_MAPPING_OPERATOR_ENUM_UNSPECIFIED
- SUBJECT_MAPPING_OPERATOR_ENUM_IN
- SUBJECT_MAPPING_OPERATOR_ENUM_NOT_IN
- SUBJECT_MAPPING_OPERATOR_ENUM_IN_CONTAINS
policy.Obligation:
type: object
properties:
id:
type: string
title: id
namespace:
title: namespace
$ref: '#/components/schemas/policy.Namespace'
name:
type: string
title: name
values:
type: array
items:
$ref: '#/components/schemas/policy.ObligationValue'
title: values
fqn:
type: string
title: fqn
metadata:
title: metadata
$ref: '#/components/schemas/common.Metadata'
title: Obligation
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
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
# --- truncated at 32 KB (89 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/virtru/refs/heads/main/openapi/virtru-policy-attributes-attributesservice-api-openapi.yml