Custom Provider Commits

Commits represent version promotions between environments. Merge versions from one environment to another or rollback to a previous version.

Custom Provider Commits object

Attributes

object

String

String representing the object's type

id

String

Unique custom provider commit identifier

status

StringNullable

Current commit status

trigger

StringNullable

What triggered this commit

error

ObjectNullable

custom_provider_id

String

ID of the parent custom provider

provider_id

StringNullable

ID of the associated provider

custom_provider_deployment_id

StringNullable

ID of the associated deployment

to_environment

ObjectNullable

from_environment

ObjectNullable

target_custom_provider_version

ObjectNullable

previous_custom_provider_version

ObjectNullable

actor

ObjectNullable

created_at

Date

Timestamp when created

applied_at

DateNullable

Timestamp when the commit was applied

{
"object": "custom_provider.commit",
"id": "cpcm_1aBcDeFgHjKlMnPq",
"status": "pending",
"trigger": "manual",
"error": {
"code": "deployment_failed",
"message": "Deployment failed due to timeout"
},
"custom_provider_id": "cpr_1aBcDeFgHjKlMnPq",
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"custom_provider_deployment_id": "cpd_1aBcDeFgHjKlMnPq",
"to_environment": {
"object": "custom_provider.environment",
"id": "cpenv_1aBcDeFgHjKlMnPq",
"custom_provider_id": "cpr_1aBcDeFgHjKlMnPq",
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"current_provider_version_id": "prv_4dEfGhJkLmNpQrSt",
"instance_id": "ins_2cDeFgHjKlMnPqRs",
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
},
"from_environment": {
"object": "custom_provider.environment",
"id": "cpenv_1aBcDeFgHjKlMnPq",
"custom_provider_id": "cpr_1aBcDeFgHjKlMnPq",
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"current_provider_version_id": "prv_4dEfGhJkLmNpQrSt",
"instance_id": "ins_2cDeFgHjKlMnPqRs",
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
},
"target_custom_provider_version": {
"object": "custom_provider.version",
"id": "cpv_1aBcDeFgHjKlMnPq",
"status": "queued",
"index": 1,
"identifier": "v1.0.0",
"deployment": {
"object": "custom_provider.deployment",
"id": "cpd_1aBcDeFgHjKlMnPq",
"status": "queued",
"trigger": "manual",
"custom_provider_id": "cpr_1aBcDeFgHjKlMnPq",
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"custom_provider_version_id": "cpv_1aBcDeFgHjKlMnPq",
"commit": {
"id": "cpcm_1aBcDeFgHjKlMnPq",
"type": "merge",
"message": "Deploy new version",
"created_at": "2025-09-15T10:30:00.000Z"
},
"actor": {
"id": "act_1aBcDeFgHjKlMnPq",
"name": "John Doe",
"type": "external",
"organization_actor_id": "orgact_1aBcDeFgHjKlMnPq"
},
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
},
"environments": [
{
"object": "custom_provider.environment",
"id": "cpenv_1aBcDeFgHjKlMnPq",
"environment": {
"object": "custom_provider.environment",
"id": "cpenv_1aBcDeFgHjKlMnPq",
"custom_provider_id": "cpr_1aBcDeFgHjKlMnPq",
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"current_provider_version_id": "prv_4dEfGhJkLmNpQrSt",
"instance_id": "ins_2cDeFgHjKlMnPqRs",
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
}
}
],
"custom_provider_id": "cpr_1aBcDeFgHjKlMnPq",
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"actor": {
"id": "act_1aBcDeFgHjKlMnPq",
"name": "John Doe",
"type": "external",
"organization_actor_id": "orgact_1aBcDeFgHjKlMnPq"
},
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
},
"previous_custom_provider_version": {
"object": "custom_provider.version",
"id": "cpv_1aBcDeFgHjKlMnPq",
"status": "queued",
"index": 1,
"identifier": "v1.0.0",
"deployment": {
"object": "custom_provider.deployment",
"id": "cpd_1aBcDeFgHjKlMnPq",
"status": "queued",
"trigger": "manual",
"custom_provider_id": "cpr_1aBcDeFgHjKlMnPq",
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"custom_provider_version_id": "cpv_1aBcDeFgHjKlMnPq",
"commit": {
"id": "cpcm_1aBcDeFgHjKlMnPq",
"type": "merge",
"message": "Deploy new version",
"created_at": "2025-09-15T10:30:00.000Z"
},
"actor": {
"id": "act_1aBcDeFgHjKlMnPq",
"name": "John Doe",
"type": "external",
"organization_actor_id": "orgact_1aBcDeFgHjKlMnPq"
},
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
},
"environments": [
{
"object": "custom_provider.environment",
"id": "cpenv_1aBcDeFgHjKlMnPq",
"environment": {
"object": "custom_provider.environment",
"id": "cpenv_1aBcDeFgHjKlMnPq",
"custom_provider_id": "cpr_1aBcDeFgHjKlMnPq",
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"current_provider_version_id": "prv_4dEfGhJkLmNpQrSt",
"instance_id": "ins_2cDeFgHjKlMnPqRs",
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
}
}
],
"custom_provider_id": "cpr_1aBcDeFgHjKlMnPq",
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"actor": {
"id": "act_1aBcDeFgHjKlMnPq",
"name": "John Doe",
"type": "external",
"organization_actor_id": "orgact_1aBcDeFgHjKlMnPq"
},
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
},
"actor": {
"id": "act_1aBcDeFgHjKlMnPq",
"name": "John Doe",
"type": "external",
"organization_actor_id": "orgact_1aBcDeFgHjKlMnPq"
},
"created_at": "2025-09-15T10:30:00.000Z",
"applied_at": "2025-09-15T10:35:00.000Z"
}

List custom provider commits

Returns a paginated list of commits for a custom provider.

URL Parameters

custom_provider_id

String

The unique identifier for the custom_provider

Query Parameters

limit

NumberOptional

Maximum number of items to return (1-100)

after

StringOptional

Return items after this ID

before

StringOptional

Return items before this ID

cursor

StringOptional

Pagination cursor from a previous response

order

EnumOptional

Sort order for results

ids

UnionOptional

Filter by commit IDs

custom_provider_version_ids

UnionOptional

Filter by version IDs

custom_provider_environment_ids

UnionOptional

Filter by environment IDs

GEThttp://api.metorial.com/custom-providers/:custom_provider_id/commits
curl -X GET "https://api.metorial.com/custom-providers/cus_Rm4Mnheq2bfEPhBhP7SY/commits" \
-H "Authorization: Bearer metorial_sk_..."

Get custom provider commit

Retrieves a specific commit.

URL Parameters

custom_provider_id

String

The unique identifier for the custom_provider

custom_provider_commit_id

String

The unique identifier for the custom_provider_commit

GEThttp://api.metorial.com/custom-providers/:custom_provider_id/commits/:custom_provider_commit_id
curl -X GET "https://api.metorial.com/custom-providers/cus_Rm4Mnheq2bfEPhBhP7SY/commits/cus_Rm4Mnheq2bfEPhBhP7SY" \
-H "Authorization: Bearer metorial_sk_..."

Create custom provider commit

Creates a new commit to promote or rollback a version in an environment.

URL Parameters

custom_provider_id

String

The unique identifier for the custom_provider

Request Body

message

String

Commit message

action

Object

The commit action to perform

POSThttp://api.metorial.com/custom-providers/:custom_provider_id/commits
curl -X POST "https://api.metorial.com/custom-providers/cus_Rm4Mnheq2bfEPhBhP7SY/commits" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer metorial_sk_..." \
-d '{
"message": "example_message",
"action": {
"type": "example_type",
"from_environment_id": "example_from_environment_id",
"to_environment_id": "example_to_environment_id"
}
}'