Recycle Bin
The recycle bin holds soft-deleted resources for 30 days before automatic permanent purge. During this window, resources can be inspected, restored individually or with dependents (cascade restore), or permanently deleted ahead of the 30-day deadline.
Recycle bin schema
Returns all resources deleted within the last 30 days, across all resource types. Files and folders deleted from Celigo Storage are included as StorageItem entries. Sorted by lastModified descending. Not paginated — the full result set is returned in a single response.
Maximum number of entries to return per resource type. Applied
independently to each type, so the total response size is up to
limit × the number of resource types with deleted items.
Does not apply to StorageItem entries — every deleted storage
item is always included.
10Array of deleted resource entries.
Identifies the resource type of the wrapped document.
ScriptPossible values: Recycle bin is empty (no body returned).
Unauthorized. The request lacks a valid bearer token, or the provided token failed to authenticate.
Note: the 401 response is produced by the auth middleware before the
request reaches the endpoint handler, so it does not follow the
standard {errors: [...]} envelope. Instead the body is a bare
{message: string} object with no code, no errors array. Callers
handling 401s should key off the HTTP status and the message string,
not try to destructure an errors[].
GET /v1/recycleBinTTL HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
[
{
"model": "StorageItem",
"doc": {
"_id": "6a55baeec4855ce84f89995d",
"type": "file",
"name": "old-report.pdf",
"size": 245760,
"mimeType": "application/pdf",
"status": "active",
"isSystem": false,
"createdAt": "2026-07-14T04:28:30.456Z",
"lastModified": "2026-07-14T04:30:17.254Z",
"deletedAt": "2026-07-14T04:30:17.253Z",
"deletedBy": "624cb0346309dc3a543733a2"
}
},
{
"model": "Connection",
"doc": {
"_id": "6a074dce9dc296c4ef80c547",
"name": "Shopify Production",
"type": "http",
"createdAt": "2026-05-15T16:46:06.754Z",
"lastModified": "2026-05-15T16:53:12.492Z"
}
},
{
"model": "Flow",
"doc": {
"_id": "6a0faff9987bc622fa144d8d",
"name": "Sync orders to NetSuite",
"disabled": true,
"createdAt": "2026-05-22T01:23:06.000Z",
"lastModified": "2026-05-22T01:25:17.971Z",
"lastExecutedAt": "2026-05-22T01:24:43.849Z"
}
},
{
"model": "LookupCache",
"doc": {
"_id": "6a07e31dc6c9a763e00d6f47",
"name": "SKU cross-reference cache",
"includeDataInTemplatesAndCloning": false,
"size": 0,
"sizeInMB": "0 MB",
"createdAt": "2026-05-16T03:23:09.399Z",
"lastModified": "2026-05-16T03:23:11.578Z",
"deletedAt": "2026-05-16T03:23:11.522Z"
}
}
]Returns deleted resources of a specific type from the recycle bin (last 30 days). Sort order is not guaranteed. Not paginated — the full result set is returned in a single response.
storageitems behaves differently: the request is proxied to Celigo Storage, which returns an object wrapping an items array (not a bare array), sorted by newest deletion first and paginated via the Link response header.
Resource type to operate on.
Maximum number of resources to return.
10Array of deleted resource documents.
Unique identifier for the resource.
6a07738df8b91b72d72903c6Display name for the resource.
Transform order payloadTimestamp when the resource was created.
2026-05-15T19:27:09.037ZTimestamp when the resource was last modified.
2026-05-15T19:27:10.146ZTimestamp when the resource was deleted.
2026-05-16T01:42:50.767ZNo deleted resources of this type (no body returned).
Unauthorized. The request lacks a valid bearer token, or the provided token failed to authenticate.
Note: the 401 response is produced by the auth middleware before the
request reaches the endpoint handler, so it does not follow the
standard {errors: [...]} envelope. Instead the body is a bare
{message: string} object with no code, no errors array. Callers
handling 401s should key off the HTTP status and the message string,
not try to destructure an errors[].
The resource type is not supported by the recycle bin.
GET /v1/recycleBinTTL/{_resourceType} HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
[
{
"_id": "6a07738df8b91b72d72903c6",
"name": "Transform order payload",
"sandbox": false,
"postResponseHookToProcessOnChildRecord": false,
"createdAt": "2026-05-15T19:27:09.037Z",
"lastModified": "2026-05-15T19:27:10.146Z"
},
{
"_id": "6a0fc53d5f269e647c8c0df2",
"name": "Parse CSV line items",
"sandbox": false,
"postResponseHookToProcessOnChildRecord": false,
"createdAt": "2026-05-22T02:53:49.356Z",
"lastModified": "2026-05-22T03:10:28.669Z"
}
]Returns the full document of a specific deleted resource from the recycle bin. May include fields that the list endpoints omit (e.g. content on scripts, queues on connections). Not supported for storageitems — deleted storage item documents are available only from the list endpoints.
Resource type to operate on.
Identifies which deleted resource to retrieve.
6a024e629a0943889001f33aThe deleted resource document.
Unique identifier for the resource.
6a024e629a0943889001f33aDisplay name for the resource.
Parse AI agent final_output JSONTimestamp when the resource was created.
2026-05-11T21:47:14.145ZTimestamp when the resource was last modified.
2026-05-11T22:27:53.062ZTimestamp when the resource was deleted.
2026-05-16T01:42:50.767ZBad request. The server could not understand the request because of malformed syntax or invalid parameters.
Unauthorized. The request lacks a valid bearer token, or the provided token failed to authenticate.
Note: the 401 response is produced by the auth middleware before the
request reaches the endpoint handler, so it does not follow the
standard {errors: [...]} envelope. Instead the body is a bare
{message: string} object with no code, no errors array. Callers
handling 401s should key off the HTTP status and the message string,
not try to destructure an errors[].
The resource type is not supported by the recycle bin.
Not found. The requested resource does not exist or is not visible to the caller.
Returned when _resourceType is storageitems, regardless of
_id — storage items cannot be fetched individually from the
recycle bin.
GET /v1/recycleBinTTL/{_resourceType}/{_id} HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"_id": "6a024e629a0943889001f33a",
"name": "Transform order payload",
"sandbox": false,
"postResponseHookToProcessOnChildRecord": false,
"content": "function preSavePage({ data }) {\n return data;\n}",
"createdAt": "2026-05-11T21:47:14.145Z",
"lastModified": "2026-05-11T22:27:53.062Z"
}Restores a single resource from the recycle bin back to the account's active resources. Any request body is ignored.
Standalone restore is blocked if a child resource is still in the recycle bin. To restore a resource along with all of its dependents (child flows, exports, imports, etc.), use the cascade-restore endpoint instead.
Resource type to operate on.
Identifies which deleted resource to restore.
6a024e629a0943889001f33aResource restored successfully (no body returned).
No content
Bad request. The server could not understand the request because of malformed syntax or invalid parameters.
Unauthorized. The request lacks a valid bearer token, or the provided token failed to authenticate.
Note: the 401 response is produced by the auth middleware before the
request reaches the endpoint handler, so it does not follow the
standard {errors: [...]} envelope. Instead the body is a bare
{message: string} object with no code, no errors array. Callers
handling 401s should key off the HTTP status and the message string,
not try to destructure an errors[].
The resource type is not supported by the recycle bin. Also
returned for storageitems — storage items cannot be restored
through this endpoint.
Not found. The requested resource does not exist or is not visible to the caller.
Resource has dependents still in the recycle bin. Restore the dependents first, or use cascade restore.
POST /v1/recycleBinTTL/{_resourceType}/{_id} HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No content
Permanently purges a resource from the recycle bin. This action cannot be undone — the resource data is irrecoverably removed. Resources are auto-purged after 30 days.
Resource type to operate on.
Identifies which deleted resource to purge.
6a024e629a0943889001f33aResource permanently deleted (no body returned).
No content
Bad request. The server could not understand the request because of malformed syntax or invalid parameters.
Unauthorized. The request lacks a valid bearer token, or the provided token failed to authenticate.
Note: the 401 response is produced by the auth middleware before the
request reaches the endpoint handler, so it does not follow the
standard {errors: [...]} envelope. Instead the body is a bare
{message: string} object with no code, no errors array. Callers
handling 401s should key off the HTTP status and the message string,
not try to destructure an errors[].
The resource type is not supported by the recycle bin. Also
returned for storageitems — storage items cannot be purged
through this endpoint.
Not found. The requested resource does not exist or is not visible to the caller.
DELETE /v1/recycleBinTTL/{_resourceType}/{_id} HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No content
Restores a resource from the recycle bin along with all of its dependent resources (child flows, exports, imports, connections, scripts, etc.). Any request body is ignored. Prefer this over standalone restore when restoring integrations or flows.
This path uses resourceType (no leading underscore), unlike the other recycle bin paths which use _resourceType.
Resource type to cascade-restore. Uses resourceType (no leading underscore), unlike the other recycle bin paths.
Identifies which deleted resource to cascade-restore.
6a074dce9dc296c4ef80c547Resource and all dependents restored successfully (no body returned).
No content
Unauthorized. The request lacks a valid bearer token, or the provided token failed to authenticate.
Note: the 401 response is produced by the auth middleware before the
request reaches the endpoint handler, so it does not follow the
standard {errors: [...]} envelope. Instead the body is a bare
{message: string} object with no code, no errors array. Callers
handling 401s should key off the HTTP status and the message string,
not try to destructure an errors[].
The resource type does not support cascade restore.
Not found. The requested resource does not exist or is not visible to the caller.
POST /v1/recycleBinTTL/{resourceType}/{_id}/doCascadeRestore HTTP/1.1
Host: api.integrator.io
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No content
Last updated
Was this helpful?