Skip to main content
DELETE
https://sandbox.getcollate.io/api
/
v1
/
pipelines
/
{id}
DELETE /v1/pipelines/{id}
from metadata.sdk import configure
from metadata.sdk.entities import Pipelines

configure(
    host="https://your-company.getcollate.io/api",
    jwt_token="your-jwt-token"
)

# Soft delete by ID
Pipelines.delete("538faa63-d204-46ff-aead-d158d0401cac")

# Hard delete
Pipelines.delete(
    "538faa63-d204-46ff-aead-d158d0401cac",
    hard_delete=True
)

# Delete by name
Pipelines.delete_by_name("sample_airflow.dbt_analytics_customers")

# Delete by name with options
Pipelines.delete_by_name(
    "sample_airflow.dbt_analytics_customers",
    hard_delete=True
)

# Restore a soft-deleted pipeline
Pipelines.restore("538faa63-d204-46ff-aead-d158d0401cac")
{
  "id": "538faa63-d204-46ff-aead-d158d0401cac",
  "name": "dbt_analytics_customers",
  "displayName": "DBT Customer Analytics",
  "fullyQualifiedName": "sample_airflow.dbt_analytics_customers",
  "version": 0.2,
  "updatedAt": 1769982668397,
  "updatedBy": "admin",
  "service": {
    "id": "daa58a49-df05-48a3-a417-45dfd12eacf5",
    "type": "pipelineService",
    "name": "sample_airflow",
    "fullyQualifiedName": "sample_airflow"
  },
  "serviceType": "DBTCloud",
  "deleted": true,
  "owners": [],
  "tags": [],
  "followers": [],
  "votes": {
    "upVotes": 0,
    "downVotes": 0
  },
  "domains": []
}

Delete a Pipeline

Delete a pipeline by ID or fully qualified name. Supports soft delete (default), hard delete, and restore operations.

Delete by ID

id
string
required
UUID of the pipeline to delete.
recursive
boolean
default:"false"
Recursively delete child entities.
hardDelete
boolean
default:"false"
Permanently delete the pipeline. If false, the pipeline is soft-deleted and can be restored.

Delete by Name

Use DELETE /v1/pipelines/name/{fqn} to delete by fully qualified name.
fqn
string
required
Fully qualified name of the pipeline (e.g., sample_airflow.dbt_analytics_customers).
recursive
boolean
default:"false"
Recursively delete child entities.
hardDelete
boolean
default:"false"
Permanently delete the pipeline.

Restore a Soft-Deleted Pipeline

Use PUT /v1/pipelines/restore to restore a soft-deleted pipeline.
id
string
required
UUID of the soft-deleted pipeline to restore.
DELETE /v1/pipelines/{id}
from metadata.sdk import configure
from metadata.sdk.entities import Pipelines

configure(
    host="https://your-company.getcollate.io/api",
    jwt_token="your-jwt-token"
)

# Soft delete by ID
Pipelines.delete("538faa63-d204-46ff-aead-d158d0401cac")

# Hard delete
Pipelines.delete(
    "538faa63-d204-46ff-aead-d158d0401cac",
    hard_delete=True
)

# Delete by name
Pipelines.delete_by_name("sample_airflow.dbt_analytics_customers")

# Delete by name with options
Pipelines.delete_by_name(
    "sample_airflow.dbt_analytics_customers",
    hard_delete=True
)

# Restore a soft-deleted pipeline
Pipelines.restore("538faa63-d204-46ff-aead-d158d0401cac")
{
  "id": "538faa63-d204-46ff-aead-d158d0401cac",
  "name": "dbt_analytics_customers",
  "displayName": "DBT Customer Analytics",
  "fullyQualifiedName": "sample_airflow.dbt_analytics_customers",
  "version": 0.2,
  "updatedAt": 1769982668397,
  "updatedBy": "admin",
  "service": {
    "id": "daa58a49-df05-48a3-a417-45dfd12eacf5",
    "type": "pipelineService",
    "name": "sample_airflow",
    "fullyQualifiedName": "sample_airflow"
  },
  "serviceType": "DBTCloud",
  "deleted": true,
  "owners": [],
  "tags": [],
  "followers": [],
  "votes": {
    "upVotes": 0,
    "downVotes": 0
  },
  "domains": []
}

Returns

Soft delete returns the pipeline object with deleted: true. Hard delete returns no content (204). Restore returns the restored pipeline object.

Error Handling

CodeError TypeDescription
401UNAUTHORIZEDInvalid or missing authentication token
403FORBIDDENUser lacks permission to delete this pipeline
404NOT_FOUNDPipeline with given ID or FQN does not exist