---
title: "Delete a DSL revision"
method: DELETE
path: "/v1/integration/advanced-dsl/projects/{projectId}/revisions/{revisionId}"
tags: ["Advanced DSL Project Management"]
---

# Delete a DSL revision

`DELETE /v1/integration/advanced-dsl/projects/{projectId}/revisions/{revisionId}`

## Request

- Base URL: `https://integration-adapter.connect.cloud.precisely.com`
- URL: `https://integration-adapter.connect.cloud.precisely.com/v1/integration/advanced-dsl/projects/{projectId}/revisions/{revisionId}`
- Auth: HTTP bearer

Deletes a revision and orphaned file assets from the project catalog.

**Features**
- Before deletion, fetches all files linked to the revision.
- Physically deletes file assets that belong **only** to this revision.
- Skips physical deletion for files shared with other revisions.
- Deletion of the latest revision is blocked unless `force=true`.

**Use Cases**
- Pruning an outdated revision and its exclusive files to reclaim catalog space.
- Force-deleting the current head revision during rollback or project reset.

**Scenarios**
- File included by only this revision → physically deleted; listed in `filesPhysicallyDeleted`.
- File shared across multiple revisions → not deleted; listed in `filesRelationshipDeleted`.
- Attempting to delete the latest revision without `force=true` → 409 conflict.

**Required Permissions**: `replication-pipeline::delete` when permission harmonization is enabled; otherwise, `replication-pipeline::manage`.

## Path parameters

- `projectId` string, required
- `revisionId` string, required

## Query parameters

- `force` boolean

## Response `200`

Revision deleted successfully, with lists of physically and relationship-deleted files

- DeleteDslRevisionResponse: Response confirming the DSL revision was deleted successfully
  - `revisionId` string: Catalog asset ID of the deleted revision
  - `name` string: The display name of the deleted revision
  - `revisionNumber` integer: The revision number that was deleted
  - `filesPhysicallyDeleted` string[]: Catalog asset IDs of file assets physically deleted from the catalog
  - `filesRelationshipDeleted` string[]: Catalog asset IDs of file-to-revision relationship records deleted
  - `remainingRevisionsCount` integer: Number of revisions remaining for the project after this deletion
  - `timestamp` string, date-time: Server timestamp when the deletion was processed

## Other responses

- `401`: Missing or invalid authentication token
- `403`: Insufficient permissions — requires `replication-pipeline::delete` or legacy `replication-pipeline::manage`
- `404`: Project or revision not found (error codes: DI-ADAPTER-DSL-0011 DSL_PROJECT_NOT_FOUND, DI-ADAPTER-DSL-0010 DSL_REVISION_NOT_FOUND)
- `409`: Cannot delete the latest revision without force=true (error code: DI-ADAPTER-DSL-0023 DSL_LATEST_REVISION_DELETE_CONFLICT)
- `500`: Internal server error — catalog revision or file deletion failed (error codes: DI-ADAPTER-DSL-0022 DSL_REVISION_DELETE_FAILED)

---

[API](https://skmtc.dev/precisely/apis/precisely-integration-adapter-service.md) · [All operations](https://skmtc.dev/precisely/apis/precisely-integration-adapter-service/llms.txt) · [OpenAPI document](https://skmtc.dev/precisely/apis/precisely-integration-adapter-service/revisions/2d2629f4987d?raw)
