Crusoe Identities API

The Identities API from Crusoe — 1 operation(s) for identities.

OpenAPI Specification

crusoe-identities-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Crusoe Identities API
  version: '1.0'
  description: 'Operations tagged Identities across 2 of this provider''s published API definitions: crusoe-cloud-api-gateway-v1-openapi.json, crusoe-cloud-api-gateway-v1alpha5-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.cloud.crusoe.ai/v1
tags:
- name: Identities
paths:
  /users/identities:
    get:
      operationId: getUserIdentity
      responses:
        '200':
          $ref: '#/components/responses/usersGetResponse'
        '401':
          $ref: '#/components/responses/authError'
        '500':
          $ref: '#/components/responses/serverError'
      summary: Retrieve user details for the logged in user.
      tags:
      - Identities
    put:
      description: A successful response from this resource wil contain the updated user details.
      operationId: updateUserIdentity
      responses:
        '200':
          $ref: '#/components/responses/usersPutResponse'
        '401':
          $ref: '#/components/responses/authError'
        '500':
          $ref: '#/components/responses/serverError'
      summary: Update user details for the logged in user.
      tags:
      - Identities
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IdentityPutRequest'
        required: true
components:
  responses:
    usersPutResponse:
      description: ''
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UserResponse'
    usersGetResponse:
      description: ''
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UserResponse'
    serverError:
      description: Error Internal Server
      content:
        application/json:
          schema:
            properties:
              code:
                example: '500'
                type: string
                x-go-name: Code
              message:
                example: internal_error
                type: string
                x-go-name: Message
            required:
            - code
            - message
            type: object
    authError:
      description: Error Authentication Failed
      content:
        application/json:
          schema:
            properties:
              code:
                example: '401'
                type: string
                x-go-name: Code
              message:
                example: bad_credential
                type: string
                x-go-name: Message
            required:
            - code
            - message
            type: object
  schemas:
    RoleBinding:
      properties:
        customer_id:
          type: string
          x-go-name: CustomerID
        id:
          type: string
          x-go-name: ID
        role_id:
          type: string
          x-go-name: RoleID
        role_name:
          type: string
          x-go-name: RoleName
        scope_object_id:
          type: string
          x-go-name: ScopeObjectID
        scope_type:
          type: string
          x-go-name: ScopeType
      required:
      - id
      - customer_id
      - role_id
      - scope_type
      - scope_object_id
      - role_name
      type: object
      x-go-package: gitlab.com/crusoeenergy/island/rest-gateway/internal/models
    Identity:
      description: 'Identity contains the information stored for a User. These are

        the fields returned from a GET or PUT request.'
      properties:
        accepted_tos:
          example: true
          type: boolean
          x-go-name: AcceptedTos
        company_name:
          example: Crusoe
          type: string
          x-go-name: CompanyName
        email:
          example: john.doe@crusoeenergy.com
          type: string
          x-go-name: Email
        id:
          type: string
          x-go-name: ID
        is_recovery:
          example: true
          type: boolean
          x-go-name: IsRecoveryFlow
        managed_by:
          example: scim_okta
          type: string
          x-go-name: ManagedBy
        name:
          example: John Doe
          type: string
          x-go-name: Name
        org_role:
          example: org-member, org-admin
          type: string
          x-go-name: OrgRole
        registration_type:
          example: waitlist
          type: string
          x-go-name: RegistrationType
        role:
          example: Admin
          type: string
          x-go-name: Role
        role_bindings:
          items:
            $ref: '#/components/schemas/RoleBinding'
          type: array
          x-go-name: RoleBindings
        sso_enforcement:
          enum:
          - required
          - none
          example: none
          type: string
          x-go-name: SSOEnforcement
        user_state:
          $ref: '#/components/schemas/UserStateEnum'
      required:
      - id
      - email
      - name
      - role
      type: object
      x-go-package: gitlab.com/crusoeenergy/island/rest-gateway/internal/models
    IdentityCredential:
      properties:
        created_at:
          format: date-time
          type: string
          x-go-name: CreatedAt
        type:
          type: string
          x-go-name: Type
        updated_at:
          format: date-time
          type: string
          x-go-name: UpdatedAt
      required:
      - type
      - created_at
      - updated_at
      title: IdentityCredential represents a specific Kratos credential type, sanitized to expose to customers.
      type: object
      x-go-package: gitlab.com/crusoeenergy/island/auth-gateway/pkg/authmodels
    IdentityPutRequest:
      properties:
        name:
          example: John Doe
          type: string
          x-go-name: Name
        role:
          example: Admin
          type: string
          x-go-name: Role
      required:
      - name
      type: object
      x-go-package: gitlab.com/crusoeenergy/island/rest-gateway/internal/models
    UserResponse:
      description: The Identity of a user is returned.
      properties:
        credentials:
          description: Credentials will be deprecated
          items:
            type: string
          type: array
          x-go-name: Credentials
        credentials_map:
          additionalProperties:
            $ref: '#/components/schemas/IdentityCredential'
          type: object
          x-go-name: CredentialsMap
        identity:
          $ref: '#/components/schemas/Identity'
      required:
      - identity
      title: UserResponse is the return type from the GET and PUT handlers to User.
      type: object
      x-go-package: gitlab.com/crusoeenergy/island/rest-gateway/internal/models
    UserStateEnum:
      type: string
      x-go-package: gitlab.com/crusoeenergy/island/auth-gateway/pkg/authmodels
x-refined-from:
- crusoe-cloud-api-gateway-v1-openapi.json
- crusoe-cloud-api-gateway-v1alpha5-openapi.json
x-tagGroups:
- name: Compute
  tags:
  - VMs
  - VM Operations
  - Images
  - Instance Templates
- name: Organizations
  tags:
  - Projects
  - Billing
  - Entities
  - Prospects
  - Usage
  - Quotas
  - Audit Logs
  - SCIM
- name: Users
  tags:
  - Identities
  - SSH Keys
  - Tokens
- name: Storage
  tags:
  - Disks
  - Disk Operations
  - Snapshots
  - Snapshot Operations
  - S3Buckets
  - S3Users
- name: Networking
  tags:
  - VPC Firewall Rules
  - VPC Firewall Rule Operations
  - VPC Networks
  - VPC Subnets
  - IB Partitions
  - Load Balancers
  - NVLink Domains
- name: Orchestration
  tags:
  - Kubernetes Clusters
  - Kubernetes Cluster Operations
  - Kubernetes Node Pools
  - Kubernetes Node Pool Operations
  - Kubernetes Versions
  - AutoClusters
  - AutoCluster Operations
- name: Locations
  tags:
  - Locations
- name: Capacities
  tags:
  - Capacities
- name: Container Registry
  tags:
  - Container Registry
- name: Foundry
  tags:
  - Foundry