Visier PGP Keys API

The Pretty Good Privacy (PGP) Keys API generates key pairs and provides a public key to encrypt data that you send to Visier. PGP encryption adds an additional layer of security against data disclosure. After you generate a key pair and retrieve the public encryption key, you can encrypt your data files before sending them to Visier. When Visier receives files encrypted with the public key, we retrieve the associated private key to decrypt and process the file.

Operations 4

GET /v1/api/pgp-keys Retrieve all PGP public keys #
POST /v1/api/pgp-keys Download a public encryption key #
GET /v1/api/pgp-keys/{keyID} Retrieve a PGP public key using the key ID #
DELETE /v1/api/pgp-keys/{keyID} Delete a PGP key pair #

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/visier-pgpkeys-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

visier-pgpkeys-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Visier Data In PGP Keys API
  description: Visier APIs for sending data to Visier and running data load jobs.
  license:
    name: Apache License, Version 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  version: 22222222.99201.3040
security:
- ApiKeyAuth: []
  BearerAuth: []
- ApiKeyAuth: []
  CookieAuth: []
- ApiKeyAuth: []
  OAuth2Auth: []
tags:
- name: PGPKeys
  x-displayName: PGP Keys
  description: 'The Pretty Good Privacy (PGP) Keys API generates key pairs and provides a public key to encrypt data that you send to Visier. PGP encryption adds an additional layer of security against data disclosure.

    <br><br>After you generate a key pair and retrieve the public encryption key, you can encrypt your data files before sending them to Visier. When Visier receives files encrypted with the public key, we retrieve the associated private key to decrypt and process the file.'
paths:
  /v1/api/pgp-keys:
    get:
      tags:
      - PGPKeys
      summary: Retrieve all PGP public keys
      description: Retrieve a list of all PGP public keys in your tenant.
      operationId: PGPKeys_GetAllPGPPublicKeys
      parameters:
      - name: TargetTenantID
        in: header
        description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
        schema:
          type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.crypto.PublicKeysDTO'
    post:
      tags:
      - PGPKeys
      summary: Download a public encryption key
      description: "Generate a key pair and retrieve the public key that you can use to encrypt your data to send to Visier. \n \n In the request body, optionally set the UTC expiration date for the key pair in ISO-8601 format. Must be between 2 and 10 years. Default is 2 years."
      operationId: PGPKeys_GeneratePGPKeyPair
      parameters:
      - name: TargetTenantID
        in: header
        description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/designer.crypto.KeyPairGenerateRequestDTO'
        required: true
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.crypto.PublicKeyDTO'
  /v1/api/pgp-keys/{keyID}:
    get:
      tags:
      - PGPKeys
      summary: Retrieve a PGP public key using the key ID
      description: If you know your PGP key ID, use it to retrieve the PGP public key. To get a list of all key IDs, see `Retrieve all PGP public keys`.
      operationId: PGPKeys_GetPGPPublicKey
      parameters:
      - name: keyID
        in: path
        description: The key ID of the generated key pair in 16-letter hexadecimal format, including leading zeros.
        required: true
        schema:
          type: string
      - name: TargetTenantID
        in: header
        description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
        schema:
          type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.crypto.PublicKeyDTO'
    delete:
      tags:
      - PGPKeys
      summary: Delete a PGP key pair
      description: Delete a PGP key pair using a key ID.
      operationId: PGPKeys_DeletePGPKeyPair
      parameters:
      - name: keyID
        in: path
        description: The key ID of the generated key pair in 16-letter hexadecimal format, including leading zeros.
        required: true
        schema:
          type: string
      - name: TargetTenantID
        in: header
        description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
        schema:
          type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.crypto.KeyPairDeleteResponseDTO'
components:
  schemas:
    Status:
      type: object
      properties:
        localizedMessage:
          type: string
          description: Localized error message describing the root cause of the error.
        code:
          type: string
          description: Error classification.
        message:
          type: string
          description: Not used.
        rci:
          type: string
          description: Optional root cause identifier.
        userError:
          type: boolean
          description: Indicates whether the error is a user error.
      description: The response structure for errors.
    designer.crypto.KeyPairDeleteResponseDTO:
      type: object
      properties:
        keyID:
          type: string
          description: The key ID in 16-letter hexadecimal format, including leading zeros.
    designer.crypto.PublicKeysDTO:
      type: object
      properties:
        keys:
          type: array
          items:
            $ref: '#/components/schemas/designer.crypto.PublicKeyDTO'
          description: A list of the tenant's public keys.
    designer.crypto.KeyPairGenerateRequestDTO:
      type: object
      properties:
        expirationDate:
          type: string
          description: The UTC expiration date of the key in ISO-8601 format. Must be between 2 and 10 years. Default is 2 years.
    designer.crypto.PublicKeyDTO:
      type: object
      properties:
        keyID:
          type: string
          description: The key ID of the generated key pair in 16-letter hexadecimal format, including leading zeros.
        dateGenerated:
          type: string
          description: The UTC date that the key pair was generated in milliseconds since the Unix epoch.
        expiryDate:
          type: string
          description: The UTC expiration date of the key in milliseconds since the Unix epoch.
        recipient:
          type: string
          description: The tenant code and creation date in milliseconds of the PGP key; for example, WFF_j1r_13490234234.
        publicKey:
          type: string
          description: The public key of the generated key pair.
  securitySchemes:
    CookieAuth:
      type: apiKey
      name: VisierASIDToken
      in: cookie
    ApiKeyAuth:
      type: apiKey
      name: apikey
      in: header
    BearerAuth:
      type: http
      scheme: bearer
    OAuth2Auth:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: /v1/auth/oauth2/authorize
          tokenUrl: /v1/auth/oauth2/token
          scopes:
            read: Grants read access
            write: Grants write access
        password:
          tokenUrl: /v1/auth/oauth2/token
          scopes:
            read: Grants read access
            write: Grants write access
x-tagGroups:
- name: data in
  tags:
  - DirectDataIntake
  - DataIntake
  - DataAndJobHandling
  - PGPKeys
  - DataUpload
  - TableSource