openapi: 3.1.0 info: title: Ngrok Abuse Reports SSH Certificate Authorities API description: The ngrok API provides programmatic access to all of ngrok's resources. The API is REST-ish. It follows most of the conventions of a REST API but diverges slightly when the REST model does not fit well. The API listens only on port 443 to help avoid any accidental unencrypted requests. All API access requires an API key. version: 2.0.0 contact: name: Ngrok url: https://ngrok.com license: name: Proprietary url: https://ngrok.com/tos servers: - url: https://api.ngrok.com description: Ngrok API Production Server security: - bearerAuth: [] - apiKeyAuth: [] tags: - name: SSH Certificate Authorities description: SSH Certificate Authorities manage keys for signing SSH certificates. paths: /ssh_certificate_authorities: post: operationId: createSshCertificateAuthority summary: Ngrok Create SSH Certificate Authority description: Create a new SSH Certificate Authority. tags: - SSH Certificate Authorities requestBody: required: true content: application/json: schema: type: object properties: description: type: string metadata: type: string private_key_type: type: string description: The type of private key for this CA. elliptic_curve: type: string description: The elliptic curve to use for the CA key. key_size: type: integer description: The key size in bits for RSA keys. responses: '201': description: SSH certificate authority created. content: application/json: schema: $ref: '#/components/schemas/SshCertificateAuthority' get: operationId: listSshCertificateAuthorities summary: Ngrok List SSH Certificate Authorities description: List all SSH Certificate Authorities on this account. tags: - SSH Certificate Authorities parameters: - $ref: '#/components/parameters/BeforeId' - $ref: '#/components/parameters/Limit' responses: '200': description: List of SSH certificate authorities. content: application/json: schema: $ref: '#/components/schemas/SshCertificateAuthorityList' /ssh_certificate_authorities/{id}: get: operationId: getSshCertificateAuthority summary: Ngrok Get SSH Certificate Authority description: Get the details of an SSH Certificate Authority by ID. tags: - SSH Certificate Authorities parameters: - $ref: '#/components/parameters/Id' responses: '200': description: SSH certificate authority details. content: application/json: schema: $ref: '#/components/schemas/SshCertificateAuthority' patch: operationId: updateSshCertificateAuthority summary: Ngrok Update SSH Certificate Authority description: Update an SSH Certificate Authority by ID. tags: - SSH Certificate Authorities parameters: - $ref: '#/components/parameters/Id' requestBody: required: true content: application/json: schema: type: object properties: description: type: string metadata: type: string responses: '200': description: SSH certificate authority updated. content: application/json: schema: $ref: '#/components/schemas/SshCertificateAuthority' delete: operationId: deleteSshCertificateAuthority summary: Ngrok Delete SSH Certificate Authority description: Delete an SSH Certificate Authority by ID. tags: - SSH Certificate Authorities parameters: - $ref: '#/components/parameters/Id' responses: '204': description: SSH certificate authority deleted. components: schemas: SshCertificateAuthority: type: object properties: id: type: string uri: type: string created_at: type: string format: date-time description: type: string metadata: type: string public_key: type: string key_type: type: string SshCertificateAuthorityList: type: object properties: ssh_certificate_authorities: type: array items: $ref: '#/components/schemas/SshCertificateAuthority' uri: type: string next_page_uri: type: string parameters: Id: name: id in: path required: true schema: type: string description: A unique identifier for the resource. BeforeId: name: before_id in: query required: false schema: type: string description: An ID to use for pagination. Results returned will be before this ID. Limit: name: limit in: query required: false schema: type: string description: The maximum number of results to return. Maximum is 100. securitySchemes: bearerAuth: type: http scheme: bearer description: Use an ngrok API key as a Bearer token. Create API keys from the ngrok dashboard or via the API Keys endpoints. apiKeyAuth: type: apiKey in: header name: Authorization description: Pass the API key in the Authorization header prefixed with 'Bearer '.