openapi: 3.1.0 info: title: Figma Me API version: 0.21.0 description: >- This is the OpenAPI specification for the [Figma REST API](https://www.figma.com/developers/api). termsOfService: https://www.figma.com/developer-terms/ contact: email: support@figma.com servers: - url: https://api.figma.com description: Figma Production API Server tags: - name: Me description: Operations for the currently authenticated user - name: Users description: Operations for managing and retrieving user information paths: /v1/me: get: tags: - Me - Users summary: Figma Get Current User security: - PersonalAccessToken: [] - OAuth2: - files:read description: Returns the user information for the currently authenticated user. operationId: getMe x-microcks-operation: dispatcher: FALLBACK dispatcherRules: "" defaultResponse: GetMeSuccessExample responses: '200': $ref: '#/components/responses/GetMeResponse' '403': $ref: '#/components/responses/ForbiddenErrorResponse' '429': $ref: '#/components/responses/TooManyRequestsErrorResponse' '500': $ref: '#/components/responses/InternalServerErrorResponse' components: securitySchemes: PersonalAccessToken: type: http scheme: bearer description: Personal access token for authentication OAuth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://www.figma.com/oauth tokenUrl: https://www.figma.com/api/oauth/token scopes: files:read: Read access to files schemas: User: type: object description: A description of a user. properties: id: type: string description: Unique stable id of the user. example: abc123 handle: type: string description: Name of the user. example: example_value img_url: type: string description: URL link to the user's profile image. example: https://www.example.com required: - id - handle - img_url example: id: "1234567890" handle: "John Designer" img_url: "https://s3-alpha.figma.com/profile/abc123-xyz789" UserWithEmail: allOf: - $ref: '#/components/schemas/User' - type: object properties: email: type: string description: >- Email associated with the user's account. This property is only present on the /v1/me endpoint. required: - email example: id: "1234567890" handle: "John Designer" img_url: "https://s3-alpha.figma.com/profile/abc123-xyz789" email: "john.designer@example.com" ErrorResponsePayload: type: object description: A response indicating an error occurred. properties: status: type: number description: Status code example: 42.5 err: type: string description: A string describing the error example: example_value required: - status - err ForbiddenError: allOf: - $ref: '#/components/schemas/ErrorResponsePayload' - type: object properties: status: type: number description: Status code enum: - 403 required: - status example: status: 403 err: "Invalid token" TooManyRequestsError: allOf: - $ref: '#/components/schemas/ErrorResponsePayload' - type: object properties: status: type: number description: Status code enum: - 429 required: - status example: status: 429 err: "Rate limit exceeded. Please wait before retrying." InternalServerError: allOf: - $ref: '#/components/schemas/ErrorResponsePayload' - type: object properties: status: type: number description: Status code enum: - 500 required: - status example: status: 500 err: "Internal server error" responses: GetMeResponse: description: Response from the GET /v1/me endpoint. content: application/json: schema: $ref: '#/components/schemas/UserWithEmail' examples: GetMeSuccessExample: summary: Successful user information response value: id: "1234567890" handle: "John Designer" img_url: "https://s3-alpha.figma.com/profile/abc123-xyz789" email: "john.designer@example.com" ForbiddenErrorResponse: description: >- The request was valid, but the server is refusing action. The user might not have the necessary permissions for a resource, or may need an account of some sort. content: application/json: schema: $ref: '#/components/schemas/ForbiddenError' examples: ForbiddenExample: summary: Invalid token error value: status: 403 err: "Invalid token" TooManyRequestsErrorResponse: description: >- In some cases API requests may be throttled or rate limited. Please wait a while before attempting the request again (typically a minute). content: application/json: schema: $ref: '#/components/schemas/TooManyRequestsError' examples: TooManyRequestsExample: summary: Rate limit exceeded error value: status: 429 err: "Rate limit exceeded. Please wait before retrying." InternalServerErrorResponse: description: An internal server error occurred. content: application/json: schema: $ref: '#/components/schemas/InternalServerError' examples: InternalServerErrorExample: summary: Internal server error value: status: 500 err: "Internal server error" examples: GetMeSuccessExample: summary: Successful user information response value: id: "1234567890" handle: "John Designer" img_url: "https://s3-alpha.figma.com/profile/abc123-xyz789" email: "john.designer@example.com"