Skip to content
Reference>REST API

REST API ​

The MetaKraftwerk REST API provides programmatic access to the core resources of the platform. It enables you to automate workflows such as uploading instance metadata, triggering builds, downloading generated artifacts, querying the meta database, and managing deployments — all without using the web interface.

See Also

Base URL ​

All API endpoints are served under the following base URL:

https://app.metakraftwerk.com/api/v1

Authentication ​

All endpoints require a valid JSON Web Token (JWT) in the Authorization header. See the Authentication page for details on how to obtain and use a token.

Authorization: Bearer <ACCESS_TOKEN>

Available Endpoints ​

Core Resources ​

EndpointMethodsDescription
/projectsGETList and retrieve projects.
/patternsGETList and retrieve data integration patterns.
/instancesGET, POSTList, retrieve, and upload instance metadata.
/instance_foldersGETList and retrieve instance folder hierarchies.

Build & Deployment ​

EndpointMethodsDescription
/buildsGET, POSTList builds and trigger new build executions.
/downloadsGETList and download build result files.
/deploymentsGETList deployment definitions for patterns.
/build_deploymentsGET, POSTList and trigger build deployments.

Metadata & Configuration ​

EndpointMethodsDescription
/metadataPOSTExecute SQL statements in the meta database.
/functional_rolesGETList functional role definitions for patterns.
/instance_propertiesGETList instance property schemas for patterns.
/pattern_variablesGETList pattern variables and their resolved values.
/labelsGETList labels for projects and patterns.

Release Management ​

EndpointMethodsDescription
/releasesGETList and retrieve releases.
/release_groupsGETList and retrieve release groups.

Agents ​

EndpointMethodsDescription
/agentsGETList and retrieve agents.
/agent_groupsGETList and retrieve agent groups.

Common Patterns ​

Name-Based Lookups ​

Most endpoints support filtering by name as a query parameter, in addition to filtering by id. Where a related resource is required (e.g., pattern_id), you can often use the name-based alternative (e.g., pattern=CORE_DV_HLS) instead of the numeric ID.

Error Handling ​

All error responses follow this structure:

json
{
  "name": "BadRequest",
  "message": "Descriptive error message",
  "code": 400
}
Status CodeMeaning
400Bad Request — Missing or invalid parameters.
401Not Authenticated — Missing or expired token.
403Forbidden — Insufficient permissions.
404Not Found — Resource does not exist.
405Method Not Allowed — HTTP method not supported for this endpoint.
500Internal Server Error — Unexpected server error.