openapi: 3.0.0 info: title: Cal.diy API v2 Api Keys Me API description: '' version: 1.0.0 contact: {} servers: [] tags: - name: Me paths: /v2/me: get: operationId: MeController_getMe summary: Get my profile parameters: - name: Authorization in: header description: value must be `Bearer ` where `` is api key prefixed with cal_ or managed user access token required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/GetMeOutput' tags: - Me patch: operationId: MeController_updateMe summary: Update my profile description: Updates the authenticated user's profile. Email changes require verification and the primary email stays unchanged until verification completes, unless the new email is already a verified secondary email or the user is platform-managed. parameters: - name: Authorization in: header description: value must be `Bearer ` where `` is api key prefixed with cal_ or managed user access token required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateManagedUserInput' responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/UpdateMeOutput' tags: - Me components: schemas: MeOrgOutput: type: object properties: isPlatform: type: boolean id: type: number required: - isPlatform - id UpdateMeOutput: type: object properties: status: type: string example: success enum: - success - error data: $ref: '#/components/schemas/MeOutput' required: - status - data UpdateManagedUserInput: type: object properties: email: type: string name: type: string timeFormat: type: number enum: - 12 - 24 example: 12 description: Must be 12 or 24 defaultScheduleId: type: number weekStart: type: string enum: - Monday - Tuesday - Wednesday - Thursday - Friday - Saturday - Sunday example: Monday timeZone: type: string locale: enum: - ar - ca - de - es - eu - he - id - ja - lv - pl - ro - sr - th - vi - az - cs - el - es-419 - fi - hr - it - km - nl - pt - ru - sv - tr - zh-CN - bg - da - en - et - fr - hu - iw - ko - 'no' - pt-BR - sk - ta - uk - zh-TW - bn type: string example: en avatarUrl: type: string example: https://cal.com/api/avatar/2b735186-b01b-46d3-87da-019b8f61776b.png description: URL of the user's avatar image bio: type: string description: Bio example: I am a bio metadata: type: object description: You can store any additional data you want here. Metadata must have at most 50 keys, each key up to 40 characters, and values up to 500 characters. example: key: value MeOutput: type: object properties: id: type: number username: type: string email: type: string name: type: string nullable: true avatarUrl: type: string nullable: true bio: type: string nullable: true timeFormat: type: number defaultScheduleId: type: number nullable: true weekStart: type: string timeZone: type: string organizationId: type: number nullable: true organization: $ref: '#/components/schemas/MeOrgOutput' required: - id - username - email - name - avatarUrl - bio - timeFormat - defaultScheduleId - weekStart - timeZone - organizationId GetMeOutput: type: object properties: status: type: string example: success enum: - success - error data: $ref: '#/components/schemas/MeOutput' required: - status - data