Lambda SSH Keys API

Operations for managing SSH keys.

OpenAPI Specification

lambda-ssh-keys-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Lambda Cloud File Systems SSH Keys API
  description: The Lambda Cloud API allows you to manage GPU cloud instances programmatically. You can launch, list, restart, and terminate instances, manage SSH keys, list available instance types and images, and manage persistent storage file systems through a RESTful interface.
  version: v1
  contact:
    name: Lambda Support
    url: https://support.lambdalabs.com/hc/en-us
  license:
    name: Lambda Terms of Service
    url: https://lambda.ai/legal/terms-of-service
servers:
- url: https://cloud.lambdalabs.com/api/v1
  description: Lambda Cloud API production endpoint
security:
- apiKey: []
tags:
- name: SSH Keys
  description: Operations for managing SSH keys.
paths:
  /ssh-keys:
    get:
      operationId: listSshKeys
      summary: List SSH Keys
      description: Returns a list of SSH keys saved in your account.
      tags:
      - SSH Keys
      responses:
        '200':
          description: A list of SSH keys.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/SshKey'
        '401':
          description: Unauthorized.
        '500':
          description: Internal Server Error.
    post:
      operationId: addSshKey
      summary: Add SSH Key
      description: Adds an SSH key to your account.
      tags:
      - SSH Keys
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - name
              properties:
                name:
                  type: string
                  description: The name for the SSH key.
                public_key:
                  type: string
                  description: The public key content. If omitted, a new key pair is generated and the private key is returned.
            example:
              name: my-ssh-key
              public_key: ssh-rsa AAAAB3NzaC1yc2EAAA...
      responses:
        '200':
          description: SSH key added successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/SshKey'
        '400':
          description: Bad Request.
        '401':
          description: Unauthorized.
        '500':
          description: Internal Server Error.
  /ssh-keys/{id}:
    delete:
      operationId: deleteSshKey
      summary: Delete SSH Key
      description: Deletes an SSH key from your account.
      tags:
      - SSH Keys
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
        description: The unique identifier of the SSH key.
      responses:
        '200':
          description: SSH key deleted successfully.
        '401':
          description: Unauthorized.
        '404':
          description: SSH key not found.
        '500':
          description: Internal Server Error.
components:
  schemas:
    SshKey:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the SSH key.
        name:
          type: string
          description: Name of the SSH key.
        public_key:
          type: string
          description: The public key content.
        private_key:
          type: string
          nullable: true
          description: The private key content. Only returned when a new key pair is generated.
  securitySchemes:
    apiKey:
      type: http
      scheme: basic
      description: Use your Lambda Cloud API key as the username with no password. Pass via Authorization header as Basic auth.