How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Keboola Projects API

Manage projects, project members, invitations, join requests and per-project settings.

Keboola Projects API is one of 49 APIs that Keboola publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Project. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.

This API exposes 35 operations across 25 paths, and defines 12 schemas. It is described by OpenAPI 3.2.0, at version 1.0.

Requests are made against 4 base URLs: https://connection.keboola.com, https://connection.eu-central-1.keboola.com, https://connection.north-europe.azure.keboola.com, https://connection.east-us-2.azure.keboola-testing.com.

35 operations 25 paths 12 schemas 7 DELETE11 GET1 PATCH13 POST3 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
1.0
Base URL
https://connection.keboola.com/v2/storage
Authentication
API Key, API Key, HTTP Bearer
Resource Areas
1

Authentication & Security 3

Keboola Projects API declares 3 security schemes for authenticating requests. An API key is passed in the header as X-StorageApi-Token (StorageKey). An API key is passed in the header as X-KBC-ManageApiToken (ManageKey). It accepts HTTP bearer tokens (Access Token (kbc_at_...)) (BearerAuth). By default, every request must be authenticated.

Paths & Operations 35

Across 25 paths, the API surfaces 35 operations — 7 DELETE, 11 GET, 1 PATCH, 13 POST, 3 PUT. Each is listed below with its method, path, parameters, and response codes.

Projects 35

Manage projects, project members, invitations, join requests and per-project settings.

GET
/manage/organizations/{id}/projects
List projects for an organization
get_/manage/organizations/{id}/projects::OrganizationListProjectsAction 1 param → 200401403404
POST
/manage/organizations/{id}/projects
Add a project
post_/manage/organizations/{id}/projects::OrganizationCreateProjectAction 1 param body → 200400401403404
GET
/manage/project-templates/{templateId}
Project template detail
get_/manage/project-templates/{templateId}::ProjectTemplateDetailAction 1 param → 200401404
GET
/manage/project-templates
List templates
get_/manage/project-templates::ProjectTemplateListAction → 200401
GET
/manage/projects/{projectId}/users
List project users
get_/manage/projects/{projectId}/users::ProjectListAdministratorsAction 1 param → 200401403404
POST
/manage/projects/{projectId}/users
Add a user to a project
post_/manage/projects/{projectId}/users::ProjectAddAdministratorAction 1 param body → 204400401403404422
GET
/manage/projects/{projectId}/join-requests/{joinRequestId}
Join request detail
get_/manage/projects/{projectId}/join-requests/{joinRequestId}::ProjectGetJoinRequestAction 2 params → 200401403404
PUT
/manage/projects/{projectId}/join-requests/{joinRequestId}
Approve join request
put_/manage/projects/{projectId}/join-requests/{joinRequestId}::ProjectApproveJoinRequestAction 2 params → 202400401403404
DELETE
/manage/projects/{projectId}/join-requests/{joinRequestId}
Reject join request
delete_/manage/projects/{projectId}/join-requests/{joinRequestId}::ProjectRejectJoinRequestAction 2 params → 204401403404
POST
/manage/projects/{projectId}/file-storage
Assign project file Storage
post_/manage/projects/{projectId}/file-storage::ProjectAssignFileStorageAction 1 param body → 200400401403404
POST
/manage/projects/{projectId}/storage-backend
Assign project Storage backend
post_/manage/projects/{projectId}/storage-backend::ProjectAssignStorageBackendAction 1 param body → 200400401403404
GET
/manage/projects/{projectId}/invitations/{invitationId}
Project invitation detail
get_/manage/projects/{projectId}/invitations/{invitationId}::ProjectGetInvitationAction 2 params → 200401403404
DELETE
/manage/projects/{projectId}/invitations/{invitationId}
Cancel project invitation
delete_/manage/projects/{projectId}/invitations/{invitationId}::ProjectCancelInvitationAction 2 params → 204400401403404
POST
/manage/projects/{projectId}/disabled
Change project disabled status
post_/manage/projects/{projectId}/disabled::ProjectChangeDisabledAction 1 param body → 200400401403404
POST
/manage/projects/{projectId}/organizations
Move a project
post_/manage/projects/{projectId}/organizations::ProjectChangeOrganizationAction 1 param body → 200400401403404
GET
/manage/projects/{projectId}/invitations
List project invitations
get_/manage/projects/{projectId}/invitations::ProjectListInvitationsAction 1 param → 200401403404
POST
/manage/projects/{projectId}/invitations
Invite a user to a project
post_/manage/projects/{projectId}/invitations::ProjectCreateInvitationAction 1 param body → 201400401403404422
POST
/manage/projects/{projectId}/tokens
Create Storage token
post_/manage/projects/{projectId}/tokens::ProjectCreateStorageTokenAction 1 param body → 201400401403404
GET
/manage/projects/{projectId}
Project detail
get_/manage/projects/{projectId}::ProjectDetailAction 1 param → 200401403404
PUT
/manage/projects/{projectId}
Update a project
put_/manage/projects/{projectId}::ProjectUpdateAction 1 param body → 200400401403404
DELETE
/manage/projects/{projectId}
Delete a project
delete_/manage/projects/{projectId}::ProjectDeleteAction 1 param → 204401403404
DELETE
/manage/projects/{projectId}/metadata/{metadataId}
Remove project metadata
delete_/manage/projects/{projectId}/metadata/{metadataId}::ProjectDeleteMetadataAction 2 params → 204401403404
POST
/manage/projects/{projectId}/credits
Give credits
post_/manage/projects/{projectId}/credits::ProjectGiveCreditsAction 1 param body → 201400401403404
POST
/manage/projects/{projectId}/join-project
Join a project
post_/manage/projects/{projectId}/join-project::ProjectJoinAction 1 param body → 204400401403404
GET
/manage/projects/{projectId}/join-requests
List join requests
get_/manage/projects/{projectId}/join-requests::ProjectListJoinRequestsAction 1 param → 200401403404
GET
/manage/projects/{projectId}/metadata
List project Metadata
get_/manage/projects/{projectId}/metadata::ProjectListMetadataAction 1 param → 200401403404
POST
/manage/projects/{projectId}/metadata
Set project metadata
post_/manage/projects/{projectId}/metadata::ProjectSetMetadataAction 1 param body → 201400401403404
DELETE
/manage/projects/{projectId}/users/{idOrEmail}
Delete a user from a project
delete_/manage/projects/{projectId}/users/{idOrEmail}::ProjectRemoveAdministratorAction 2 params → 204401403404
DELETE
/manage/projects/{projectId}/limits/{limitName}
Remove project limit
delete_/manage/projects/{projectId}/limits/{limitName}::ProjectRemoveLimitAction 2 params → 204401403404
DELETE
/manage/projects/{projectId}/storage-backend/{backendId}
Remove project Storage backend
delete_/manage/projects/{projectId}/storage-backend/{backendId}::ProjectRemoveStorageBackendAction 2 params → 204401403404
POST
/manage/projects/{projectId}/request-access
Request access to a project
post_/manage/projects/{projectId}/request-access::ProjectRequestAccessAction 1 param body → 201400401403404
GET
/manage/projects/{projectId}/reviewers
List project reviewers
get_/manage/projects/{projectId}/reviewers::ProjectReviewersListAction 1 param → 200400401403404
PUT
/manage/projects/{projectId}/reviewers
Update project reviewers
put_/manage/projects/{projectId}/reviewers::ProjectReviewersUpdateAction 1 param body → 204400401403404
POST
/manage/projects/{projectId}/limits
Set project limits
post_/manage/projects/{projectId}/limits::ProjectSetLimitsAction 1 param body → 200400401403404
PATCH
/manage/projects/{projectId}/users/{userId}
Change role of a user in a project
patch_/manage/projects/{projectId}/users/{userId}::ProjectUpdateAdministratorAction 2 params body → 200400401403404

Schemas 12

The contract defines 12 schemas that model the data the API accepts and returns. The most detailed are ProjectResponse (27 properties), ProjectUpdateRequest (8 properties), ProjectTemplateResponse (7 properties), UserResponse (7 properties). Each schema is shown below with its type and property counts.

ProjectInvitationDetailResponse
object
7 properties 3 required
UserResponse
object
7 properties 7 required
OrganizationCreateProjectResponse
object
ProjectReviewersUpdateRequest
object
1 property 1 required
MetadataRequest
object
2 properties 2 required
ProjectDetailResponse
object
ProjectTemplateResponse
object
7 properties 5 required
AssignStorageBackendRequest
object
1 property 1 required
ProjectCreditRequest
object
2 properties 2 required
ProjectResponse
object
27 properties 21 required
ProjectJoinRequestDetailResponse
object
5 properties 2 required
ProjectUpdateRequest
object
8 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

keboola-projects-api-openapi.yml Raw ↑

Other APIs Keboola publishes across the network.

Keboola Actions API
Keboola Admin Apps API
Keboola Admin Stacks API
Keboola Admin Users API
Keboola Admin Vendors API
Keboola App API
Keboola Auth API
Keboola Authorize API
Keboola configuration API
Keboola Configurations Jobs API
Keboola Consumers API
Keboola Credentials API
Where this information came from

This is an independent, third-party profile of Keboola Projects API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.