openapi: 3.1.0 info: title: Daytona admin users API description: Daytona AI platform API Docs version: '1.0' contact: name: Daytona Platforms Inc. url: https://www.daytona.io email: support@daytona.com license: name: Apache-2.0 url: https://www.apache.org/licenses/LICENSE-2.0 servers: - url: http://localhost:3000 tags: - name: users paths: /users/me: get: operationId: getAuthenticatedUser parameters: [] responses: '200': description: User details content: application/json: schema: $ref: '#/components/schemas/User' security: - bearer: [] - oauth2: - openid - profile - email summary: Get authenticated user tags: - users /users/account-providers: get: operationId: getAvailableAccountProviders parameters: [] responses: '200': description: Available account providers content: application/json: schema: type: array items: $ref: '#/components/schemas/AccountProvider' security: - bearer: [] - oauth2: - openid - profile - email summary: Get available account providers tags: - users /users/linked-accounts: post: operationId: linkAccount parameters: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateLinkedAccount' responses: '204': description: Account linked successfully security: - bearer: [] - oauth2: - openid - profile - email summary: Link account tags: - users /users/linked-accounts/{provider}/{providerUserId}: delete: operationId: unlinkAccount parameters: - name: provider required: true in: path schema: type: string - name: providerUserId required: true in: path schema: type: string responses: '204': description: Account unlinked successfully security: - bearer: [] - oauth2: - openid - profile - email summary: Unlink account tags: - users /users/mfa/sms/enroll: post: operationId: enrollInSmsMfa parameters: [] responses: '200': description: SMS MFA enrollment URL content: application/json: schema: type: string security: - bearer: [] - oauth2: - openid - profile - email summary: Enroll in SMS MFA tags: - users components: schemas: AccountProvider: type: object properties: name: type: string displayName: type: string required: - name - displayName UserPublicKey: type: object properties: key: type: string description: Public key name: type: string description: Key name required: - key - name User: type: object properties: id: type: string description: User ID name: type: string description: User name email: type: string description: User email publicKeys: description: User public keys type: array items: $ref: '#/components/schemas/UserPublicKey' createdAt: format: date-time type: string description: Creation timestamp required: - id - name - email - publicKeys - createdAt CreateLinkedAccount: type: object properties: provider: type: string description: The authentication provider of the secondary account userId: type: string description: The user ID of the secondary account required: - provider - userId securitySchemes: bearer: scheme: bearer bearerFormat: JWT type: http description: API Key access oauth2: type: openIdConnect openIdConnectUrl: http://localhost:3000/.well-known/openid-configuration