openapi: 3.0.3 info: title: Docupilot accounts APIs ai users API version: '1.0' description: Docupilot accounts APIs termsOfService: https://docupilot.app/terms-and-conditions/ contact: name: Team Docupilot email: support@docupilot.app tags: - name: users paths: /dashboard/accounts/v2/users/exchange_session/: get: operationId: get_exchange_session_code description: Generates a short-lived UUID code linked to the current session key for cross-domain migration. summary: Exchange session for a migration code tags: - users security: - SessionAuthentication: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/ExchangeSessionResponse' description: '' '401': content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedError' description: '' '403': content: application/json: schema: $ref: '#/components/schemas/ForbiddenError' description: '' /dashboard/accounts/v2/users/initiate_authorization_sequence/: post: operationId: initiate_authorization_sequence summary: Initiate a re-authorization sequence that would verify authenticity of logged-in userin order to allow performing high security operations like delete workspace tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/InitiateAuthorizationSequence' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/InitiateAuthorizationSequence' multipart/form-data: schema: $ref: '#/components/schemas/InitiateAuthorizationSequence' security: - SessionAuthentication: [] responses: '204': description: No response body '400': content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: '' '401': content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedError' description: '' /dashboard/accounts/v2/users/me/: get: operationId: get_me summary: get logged in user details tags: - users security: - OAuthAuthentication: [] - SessionAuthentication: [] - tokenAuth: [] responses: '200': content: application/json: schema: $ref: '#/components/schemas/User' description: '' '401': content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedError' description: '' /dashboard/accounts/v2/users/migrate_session/: get: operationId: attach_session_from_exchange_code description: Endpoint called on the API domain to exchange a short-lived code for a session cookie. summary: Migrate session to API domain parameters: - in: query name: org schema: type: string description: The organization subdomain (e.g., 'rush') required: true - in: query name: session_exchange_code schema: type: string description: The one-time UUID exchange code obtained from /exchange_session/ required: true tags: - users responses: '200': content: application/json: schema: $ref: '#/components/schemas/MigrateSessionResponse' description: '' /dashboard/accounts/v2/users/update_user_profile/: patch: operationId: update_user_profile summary: Update User Profile tags: - users requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchedUpdateUser' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/PatchedUpdateUser' multipart/form-data: schema: $ref: '#/components/schemas/PatchedUpdateUser' security: - SessionAuthentication: [] responses: '202': description: No response body '400': content: application/json: schema: $ref: '#/components/schemas/ValidationError' description: '' '401': content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedError' description: '' '403': content: application/json: schema: $ref: '#/components/schemas/ForbiddenError' description: '' components: schemas: UnauthenticatedError: type: object properties: detail: type: string required: - detail description: '' ExchangeSessionResponse: type: object properties: code: type: string required: - code description: '' ValidationError: type: object properties: errors: type: object additionalProperties: type: array items: type: string non_field_errors: type: array items: type: string required: - errors - non_field_errors description: '' ForbiddenError: type: object properties: detail: type: string required: - detail description: '' PatchedUpdateUser: type: object properties: locale: type: string nullable: true maxLength: 5 theme: enum: - light - dark - system type: string description: '' InitiateAuthorizationSequence: type: object properties: action_name: enum: - delete workspace - transfer ownership type: string default: delete workspace description: '' User: type: object properties: id: type: integer readOnly: true guid: type: string format: uuid readOnly: true description: globally unique identifier for user first_name: type: string readOnly: true last_name: type: string readOnly: true email: type: string format: email readOnly: true timezone: enum: - Pacific/Midway - America/Adak - Pacific/Honolulu - Pacific/Marquesas - America/Anchorage - America/Tijuana - America/Los_Angeles - America/Phoenix - America/Chihuahua - America/Denver - America/Belize - America/Chicago - Pacific/Easter - America/Mexico_City - America/Regina - America/Bogota - America/Cancun - America/New_York - America/Port-au-Prince - America/Havana - America/Indiana/Indianapolis - America/Asuncion - America/Halifax - America/Caracas - America/Cuiaba - America/Manaus - America/Santiago - America/Grand_Turk - America/St_Johns - America/Fortaleza - America/Sao_Paulo - America/Cayenne - America/Buenos_Aires - America/Godthab - America/Montevideo - America/Miquelon - America/Bahia - America/Noronha - Atlantic/Azores - Atlantic/Cape_Verde - UTC - Africa/Casablanca - Europe/London - Africa/Monrovia - Europe/Amsterdam - Europe/Belgrade - Europe/Brussels - Europe/Warsaw - Africa/Algiers - Africa/Windhoek - Asia/Amman - Europe/Athens - Asia/Beirut - Africa/Cairo - Asia/Damascus - Asia/Gaza - Africa/Harare - Europe/Helsinki - Asia/Jerusalem - Europe/Kaliningrad - Africa/Tripoli - Asia/Baghdad - Asia/Istanbul - Asia/Kuwait - Europe/Minsk - Europe/Moscow - Africa/Nairobi - Asia/Tehran - Asia/Muscat - Europe/Astrakhan - Asia/Baku - Europe/Samara - Indian/Mauritius - Asia/Tbilisi - Asia/Yerevan - Asia/Kabul - Asia/Tashkent - Asia/Yekaterinburg - Asia/Karachi - Asia/Kolkata - Asia/Colombo - Asia/Katmandu - Asia/Almaty - Asia/Dhaka - Asia/Rangoon - Asia/Novosibirsk - Asia/Bangkok - Asia/Barnaul - Asia/Hovd - Asia/Krasnoyarsk - Asia/Tomsk - Asia/Chongqing - Asia/Irkutsk - Asia/Kuala_Lumpur - Australia/Perth - Asia/Taipei - Asia/Ulaanbaatar - Asia/Pyongyang - Australia/Eucla - Asia/Chita - Asia/Tokyo - Asia/Seoul - Asia/Yakutsk - Australia/Adelaide - Australia/Darwin - Australia/Brisbane - Australia/Canberra - Pacific/Guam - Australia/Hobart - Asia/Vladivostok - Australia/Lord_Howe - Pacific/Bougainville - Asia/Srednekolymsk - Asia/Magadan - Pacific/Norfolk - Asia/Sakhalin - Pacific/Guadalcanal - Asia/Anadyr - Pacific/Auckland - Pacific/Fiji - Pacific/Chatham - Pacific/Tongatapu - Pacific/Apia - Pacific/Kiritimati type: string readOnly: true locale: type: string readOnly: true nullable: true theme: enum: - light - dark - system type: string readOnly: true g2_verified: type: boolean readOnly: true role: enum: - owner - admin - member type: string readOnly: true is_mfa_enabled: type: boolean readOnly: true required: - email - first_name - g2_verified - guid - id - is_mfa_enabled - last_name - locale - role - theme - timezone description: '' MigrateSessionResponse: type: object properties: status: type: string required: - status description: '' securitySchemes: OAuthAuthentication: type: http scheme: bearer description: OAuth2 Bearer Token Authentication SessionAuthentication: type: apiKey in: cookie name: sessionid description: browser based login takes care of this externalDocs: description: Help docs on how to use API url: https://help.docupilot.app/developers/api-overview