Keboola My Account API

Endpoints scoped to the current user — invitations, join requests and session tokens.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/keboola-my-account-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

keboola-my-account-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: AI Service Actions My Account API
  version: 1.0.0
  contact:
    email: devel@keboola.com
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
  description: Endpoints scoped to the current user — invitations, join requests and session tokens.
tags:
- name: My Account
  description: Endpoints scoped to the current user — invitations, join requests and session tokens.
paths:
  /manage/current-user/maintainers-invitations/{id}:
    get:
      tags:
      - My Account
      summary: My maintainer invitation detail
      description: Returns detail of the specified maintainer invitation addressed to the current user.
      operationId: get_/manage/current-user/maintainers-invitations/{id}::MaintainerInvitationDetailAction
      parameters:
      - name: id
        in: path
        description: Invitation identifier.
        required: true
        schema:
          type: integer
          pattern: '[1-9][0-9]*'
        example: 113
      responses:
        '200':
          description: Maintainer invitation detail.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MaintainerInvitationResponse'
              example:
                id: 113
                created: 2018-07-10T11:13:00+0200
                maintainer:
                  id: 7
                  name: Keboola CZ
                creator:
                  id: 2
                  name: Martin Halamicek
                  email: martin@keboola.com
        '401':
          description: Returned when the Manage token is missing or invalid.
        '403':
          description: Returned when the token does not have permission to view the invitation.
        '404':
          description: Returned when the invitation does not exist.
    put:
      tags:
      - My Account
      summary: Accept a maintainer invitation
      description: Invitation will be accepted and current user will become a member of the maintainer.
      operationId: put_/manage/current-user/maintainers-invitations/{id}::MaintainerInvitationAcceptAction
      parameters:
      - name: id
        in: path
        description: Invitation identifier.
        required: true
        schema:
          type: integer
          pattern: '[1-9][0-9]*'
        example: 113
      responses:
        '202':
          description: Invitation accepted successfully.
        '401':
          description: Returned when the Manage token is missing or invalid.
        '403':
          description: Returned when the token does not have permission to accept the invitation.
        '404':
          description: Returned when the invitation does not exist.
    delete:
      tags:
      - My Account
      summary: Reject maintainer invitation
      description: Rejects the specified maintainer invitation for the current user.
      operationId: delete_/manage/current-user/maintainers-invitations/{id}::MaintainerInvitationRejectAction
      parameters:
      - name: id
        in: path
        description: Identifier of the invitation.
        required: true
        schema:
          type: integer
          pattern: '[1-9][0-9]*'
        example: 113
      responses:
        '204':
          description: Invitation rejected successfully.
        '403':
          description: Returned when the token does not have permission.
        '404':
          description: Returned when the invitation does not exist.
  /manage/current-user/maintainers-invitations:
    get:
      tags:
      - My Account
      summary: List my maintainer invitations
      description: Returns a list of maintainer invitations addressed to the current user.
      operationId: get_/manage/current-user/maintainers-invitations::MaintainerInvitationListAction
      responses:
        '200':
          description: List of maintainer invitations.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MaintainerInvitationResponse'
              example:
              - id: 113
                created: 2018-07-10T11:13:00+0200
                maintainer:
                  id: 7
                  name: Keboola CZ
                creator:
                  id: 2
                  name: Martin Halamicek
                  email: martin@keboola.com
        '401':
          description: Returned when the Manage token is missing or invalid.
        '403':
          description: Returned when the token does not have permission to list invitations.
  /manage/current-user/organizations-invitations/{id}:
    get:
      tags:
      - My Account
      summary: My organization invitation detail
      description: Returns detail of the specified organization invitation addressed to the current user.
      operationId: get_/manage/current-user/organizations-invitations/{id}::OrganizationInvitationDetailAction
      parameters:
      - name: id
        in: path
        description: Invitation identifier.
        required: true
        schema:
          type: integer
          pattern: '[1-9][0-9]*'
        example: 113
      responses:
        '200':
          description: Organization invitation detail.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrganizationInvitationResponse'
              example:
                id: 113
                created: 2018-07-10T11:13:00+0200
                organization:
                  id: 7
                  name: Keboola CZ
                creator:
                  id: 2
                  name: Martin Halamicek
                  email: martin@keboola.com
        '401':
          description: Returned when the Manage token is missing or invalid.
        '403':
          description: Returned when the token does not have permission to view the invitation.
        '404':
          description: Returned when the invitation does not exist.
    put:
      tags:
      - My Account
      summary: Accept an organization invitation
      description: Invitation will be accepted and current user will become a member of the organization.
      operationId: put_/manage/current-user/organizations-invitations/{id}::OrganizationInvitationAcceptAction
      parameters:
      - name: id
        in: path
        description: Invitation identifier.
        required: true
        schema:
          type: integer
          pattern: '[1-9][0-9]*'
        example: 113
      responses:
        '202':
          description: Invitation accepted successfully.
        '400':
          description: Returned when the organization requires MFA and the current user does not have MFA enabled.
        '401':
          description: Returned when the Manage token is missing or invalid.
        '403':
          description: Returned when the token does not have permission to accept the invitation.
        '404':
          description: Returned when the invitation does not exist.
    delete:
      tags:
      - My Account
      summary: Reject organization invitation
      description: Rejects the specified organization invitation for the current user.
      operationId: delete_/manage/current-user/organizations-invitations/{id}::OrganizationInvitationRejectAction
      parameters:
      - name: id
        in: path
        description: Identifier of the invitation.
        required: true
        schema:
          type: integer
          pattern: '[1-9][0-9]*'
        example: 113
      responses:
        '204':
          description: Invitation rejected successfully.
        '403':
          description: Returned when the token does not have permission.
        '404':
          description: Returned when the invitation does not exist.
  /manage/current-user/organizations-invitations:
    get:
      tags:
      - My Account
      summary: List my organization invitations
      description: Returns a list of organization invitations addressed to the current user.
      operationId: get_/manage/current-user/organizations-invitations::OrganizationInvitationListAction
      responses:
        '200':
          description: List of organization invitations.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/OrganizationInvitationResponse'
              example:
              - id: 113
                created: 2018-07-10T11:13:00+0200
                organization:
                  id: 7
                  name: Keboola CZ
                creator:
                  id: 2
                  name: Martin Halamicek
                  email: martin@keboola.com
        '401':
          description: Returned when the Manage token is missing or invalid.
        '403':
          description: Returned when the token does not have permission to list invitations.
  /manage/current-user/projects-invitations/{id}:
    get:
      tags:
      - My Account
      summary: My project invitation detail
      description: Returns detail of the specified project invitation addressed to the current user.
      operationId: get_/manage/current-user/projects-invitations/{id}::ProjectInvitationDetailAction
      parameters:
      - name: id
        in: path
        description: Invitation identifier.
        required: true
        schema:
          type: integer
          pattern: '[1-9][0-9]*'
        example: 113
      responses:
        '200':
          description: Project invitation detail.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectInvitationResponse'
              example:
                id: 113
                created: 2018-07-10T11:13:00+0200
                expires: null
                reason: ''
                role: admin
                project:
                  id: 7
                  name: Martinovo
                creator:
                  id: 2
                  name: Martin Halamicek
                  email: martin@keboola.com
        '401':
          description: Returned when the Manage token is missing or invalid.
        '403':
          description: Returned when the token does not have permission to view the invitation.
        '404':
          description: Returned when the invitation does not exist.
    put:
      tags:
      - My Account
      summary: Accept a project invitation
      description: Invitation will be accepted and current user will be added to the project.
      operationId: put_/manage/current-user/projects-invitations/{id}::ProjectInvitationAcceptAction
      parameters:
      - name: id
        in: path
        description: Invitation identifier.
        required: true
        schema:
          type: integer
          pattern: '[1-9][0-9]*'
        example: 113
      responses:
        '202':
          description: Invitation accepted successfully.
        '400':
          description: Returned when the project requires MFA and the current user does not have MFA enabled.
        '401':
          description: Returned when the Manage token is missing or invalid.
        '403':
          description: Returned when the token does not have permission to accept the invitation.
        '404':
          description: Returned when the invitation does not exist.
    delete:
      tags:
      - My Account
      summary: Decline a invitation
      description: Declines the specified project invitation addressed to the current user.
      operationId: delete_/manage/current-user/projects-invitations/{id}::ProjectInvitationRejectAction
      parameters:
      - name: id
        in: path
        description: Invitation identifier.
        required: true
        schema:
          type: integer
          pattern: '[1-9][0-9]*'
        example: 113
      responses:
        '204':
          description: Invitation declined successfully.
        '401':
          description: Returned when the Manage token is missing or invalid.
        '403':
          description: Returned when the token does not have permission to decline the invitation.
        '404':
          description: Returned when the invitation does not exist.
  /manage/current-user/projects-invitations:
    get:
      tags:
      - My Account
      summary: List my project invitations
      description: Returns a list of project invitations addressed to the current user.
      operationId: get_/manage/current-user/projects-invitations::ProjectInvitationListAction
      responses:
        '200':
          description: List of project invitations.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProjectInvitationResponse'
              example:
              - id: 113
                created: 2018-07-10T11:13:00+0200
                expires: null
                reason: ''
                role: admin
                project:
                  id: 7
                  name: Martinovo
                creator:
                  id: 2
                  name: Martin Halamicek
                  email: martin@keboola.com
        '401':
          description: Returned when the Manage token is missing or invalid.
        '403':
          description: Returned when the token does not have permission to list invitations.
  /manage/current-user/projects-join-requests/{id}:
    get:
      tags:
      - My Account
      summary: My join request detail
      description: Returns detail of the specified project join request submitted by the current user.
      operationId: get_/manage/current-user/projects-join-requests/{id}::ProjectJoinRequestDetailAction
      parameters:
      - name: id
        in: path
        description: Join request identifier.
        required: true
        schema:
          type: integer
          pattern: '[1-9][0-9]*'
        example: 124
      responses:
        '200':
          description: Project join request detail.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectJoinRequestResponse'
              example:
                id: 124
                created: 2016-02-22T15:01:13+0200
                expires: 2016-03-22T15:01:13+0200
                reason: temporary test
                project:
                  id: 324
                  name: Main project
        '401':
          description: Returned when the Manage token is missing or invalid.
        '403':
          description: Returned when the token does not have permission to view the join request.
        '404':
          description: Returned when the join request does not exist.
    delete:
      tags:
      - My Account
      summary: Cancel a join request
      description: Cancels the specified project join request submitted by the current user.
      operationId: delete_/manage/current-user/projects-join-requests/{id}::ProjectJoinRequestCancelAction
      parameters:
      - name: id
        in: path
        description: Join request identifier.
        required: true
        schema:
          type: integer
          pattern: '[1-9][0-9]*'
        example: 124
      responses:
        '204':
          description: Join request cancelled successfully.
        '401':
          description: Returned when the Manage token is missing or invalid.
        '403':
          description: Returned when the token does not have permission to cancel the join request.
        '404':
          description: Returned when the join request does not exist.
  /manage/current-user/projects-join-requests:
    get:
      tags:
      - My Account
      summary: List my join requests
      description: Returns a list of project join requests submitted by the current user.
      operationId: get_/manage/current-user/projects-join-requests::ProjectJoinRequestListAction
      responses:
        '200':
          description: List of project join requests.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProjectJoinRequestResponse'
              example:
              - id: 124
                created: 2016-02-22T15:01:13+0200
                expires: 2016-03-22T15:01:13+0200
                reason: temporary test
                project:
                  id: 324
                  name: Main project
              - id: 127
                created: '2014-11-11T08:40:51+00:00'
                expires: null
                reason: ''
                project:
                  id: 423
                  name: Development
        '401':
          description: Returned when the Manage token is missing or invalid.
        '403':
          description: Returned when the token does not have permission to list join requests.
  /manage/current-user/session-token:
    post:
      tags:
      - My Account
      summary: Create session token
      description: Creates a session token for the current user.
      operationId: post_/manage/current-user/session-token::SessionTokenCreateAction
      responses:
        '201':
          description: Session token created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionTokenResponse'
        '403':
          description: Returned when the token does not have permission.
components:
  schemas:
    MaintainerInvitationResponse:
      required:
      - id
      - created
      - maintainer
      - creator
      properties:
        id:
          description: Invitation identifier.
          type: integer
          example: 113
        created:
          description: Invitation creation timestamp.
          type: string
          format: date-time
          example: 2018-07-10T11:13:00+0200
        maintainer:
          properties:
            id:
              type: integer
              example: 7
            name:
              type: string
              example: Keboola CZ
          type: object
        creator:
          properties:
            id:
              type: integer
              example: 2
            name:
              type: string
              example: Martin Halamicek
            email:
              type: string
              example: martin@keboola.com
          type: object
      type: object
      example:
        id: 113
        created: 2018-07-10T11:13:00+0200
        maintainer:
          id: 7
          name: Keboola CZ
        creator:
          id: 2
          name: Martin Halamicek
          email: martin@keboola.com
    ProjectJoinRequestResponse:
      required:
      - id
      - created
      - project
      properties:
        id:
          description: Join request identifier.
          type: integer
          example: 124
        created:
          description: Join request creation timestamp.
          type: string
          format: date-time
          example: 2016-02-22T15:01:13+0200
        expires:
          description: Join request expiration timestamp.
          type: string
          format: date-time
          example: 2016-03-22T15:01:13+0200
          nullable: true
        reason:
          description: Reason for the join request.
          type: string
          example: temporary test
          nullable: true
        project:
          properties:
            id:
              type: integer
              example: 324
            name:
              type: string
              example: Main project
          type: object
      type: object
      example:
        id: 124
        created: 2016-02-22T15:01:13+0200
        expires: 2016-03-22T15:01:13+0200
        reason: temporary test
        project:
          id: 324
          name: Main project
    ProjectInvitationResponse:
      required:
      - id
      - created
      - project
      - creator
      properties:
        id:
          description: Invitation identifier.
          type: integer
          example: 113
        created:
          description: Invitation creation timestamp.
          type: string
          format: date-time
          example: 2018-07-10T11:13:00+0200
        expires:
          description: Invitation expiration timestamp.
          type: string
          format: date-time
          example: null
          nullable: true
        reason:
          description: Reason for the invitation.
          type: string
          example: ''
          nullable: true
        role:
          description: Role assigned in the invitation.
          type: string
          example: admin
          nullable: true
        project:
          properties:
            id:
              type: integer
              example: 7
            name:
              type: string
              example: Martinovo
          type: object
        creator:
          properties:
            id:
              type: integer
              example: 2
            name:
              type: string
              example: Martin Halamicek
            email:
              type: string
              example: martin@keboola.com
          type: object
      type: object
      example:
        id: 113
        created: 2018-07-10T11:13:00+0200
        expires: null
        reason: ''
        role: admin
        project:
          id: 7
          name: Martinovo
        creator:
          id: 2
          name: Martin Halamicek
          email: martin@keboola.com
    OrganizationInvitationResponse:
      required:
      - id
      - created
      - organization
      - creator
      properties:
        id:
          description: Invitation identifier.
          type: integer
          example: 113
        created:
          description: Invitation creation timestamp.
          type: string
          format: date-time
          example: 2018-07-10T11:13:00+0200
        organization:
          properties:
            id:
              type: integer
              example: 5
            name:
              type: string
              example: Martinovo
          type: object
        creator:
          properties:
            id:
              type: integer
              example: 2
            name:
              type: string
              example: Martin Halamicek
            email:
              type: string
              example: martin@keboola.com
          type: object
      type: object
      example:
        id: 113
        created: 2018-07-10T11:13:00+0200
        organization:
          id: 5
          name: Martinovo
        creator:
          id: 2
          name: Martin Halamicek
          email: martin@keboola.com
    SessionTokenResponse:
      required:
      - id
      - token
      - description
      - created
      - expires
      - type
      properties:
        id:
          description: Token identifier.
          type: integer
        token:
          description: The session token value.
          type: string
        description:
          description: Token description.
          type: string
        created:
          description: Token creation timestamp.
          type: string
          format: date-time
        expires:
          description: Token expiration timestamp.
          type: string
          format: date-time
        type:
          description: Token type.
          type: string
      type: object
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-StorageApi-Token