{ "openapi": "3.0.3", "info": { "title": "Workfront Fusion API", "description": "REST APIs for managing and monitoring your Workfront Fusion resources. Use these APIs to programmatically access activity logs and other Fusion components coming soon.\n\n**Base URL:** https://fusion.adobe.io\n\n**Getting Started:**\n\n For detailed setup instructions, make sure to visit the [Getting Started guide](https://developer-stage.adobe.com/workfront-fusion-apis/getting-started/).\n1. Set up authentication in Adobe Developer Console, as documented [here](https://developer-stage.adobe.com/workfront-fusion-apis/getting-started/authentication/).\n2. Obtain required headers (Authorization, x-api-key, x-organization-id, x-gw-region). More details [here](https://developer-stage.adobe.com/workfront-fusion-apis/getting-started/api_headers/).\n3. Update permissions for the technical account, as documented [here](https://developer-stage.adobe.com/workfront-fusion-apis/getting-started/technical_accounts/).\n4. Make your first API call.\n", "version": "v3" }, "servers": [ { "url": "https://fusion.adobe.io", "description": "Production server" } ], "tags": [ { "name": "Scenarios", "description": "Endpoints for listing, retrieving, cloning, and inspecting scenario dependencies in your organization, and related scenario operations." }, { "name": "Scenario Versions", "description": "Endpoints for listing, retrieving, creating, and updating versions of a scenario." }, { "name": "Folders", "description": "Endpoints for creating and managing folders used to organize automations within teams." }, { "name": "Activity Logs", "description": "Endpoints for getting and exporting log of activities, such as creating a scenario or inviting a user, for your organization. Please note, for accessing activity logs, user must be a Workfront Fusion administrator for the organization.", "externalDocs": { "description": "Find out more in product documentation.", "url": "https://experienceleague.adobe.com/en/docs/workfront-fusion/using/set-up-and-manage-fusion/set-up-and-manage-orgs-and-teams/set-up-orgs-teams-and-users/view-activity-logs-for-an-org" } }, { "name": "Operations", "description": "Endpoints for getting operation count in a particular Fusion organization, grouped by various parameters. An operation is a task performed by a module. For tracking purposes, any successful action performed by a module is an operation.", "externalDocs": { "description": "Find out more in product documentation.", "url": "https://experienceleague.adobe.com/en/docs/workfront-fusion/using/set-up-and-manage-fusion/licensing-and-operations-overviews/operations-in-workfront-fusion" } }, { "name": "Connections", "description": "Endpoints for managing connections within your organization. These endpoints allow you to list all connections, retrieve details for a specific connection, and view scenarios associated with a given connection." }, { "name": "Keys", "description": "Endpoints for managing encryption keys within your organization. These endpoints allow you to list, create, update, and delete keys used for securing your data and connections." }, { "name": "Hooks", "description": "Endpoints for managing hooks within your organization. These endpoints allow you to list all hooks scoped to a team and retrieve full details and configuration for a specific hook." }, { "name": "Data Stores", "description": "Endpoints for managing data stores within your organization. These endpoints allow you to list all data stores scoped to a team, and retrieve details for a specific data store including its metadata and usage metrics such as record count and storage size." }, { "name": "Logs", "description": "Endpoints for retrieving execution logs within your organization. These endpoints allow you to list all executions scoped to a scenario or incomplete execution." }, { "name": "Data Structures", "description": "Endpoints for managing data structures within your organization. These endpoints allow you to search and filter data structures scoped to your org or a specific team, retrieve a data structure by ID including its full field specification, " }, { "name": "Users", "description": "User endpoints, including discovering which Fusion regions and organizations user can access" }, { "name": "Teams", "description": "Endpoints for listing, reading and deleting teams within an organization" }, { "name": "Organizations", "description": "Endpoints for listing and reading the organizations the caller can access" }, { "name": "Incomplete Executions", "description": "Endpoints for managing incomplete executions within your organization. These endpoints allow you to list all incomplete executions scoped to a scenario and retrieve full details for a specific incomplete execution." } ], "paths": { "/api/v3/scenarios/export": { "post": { "description": "Download the full blueprint for one or more scenarios.\n**Limits:** up to 100 scenario IDs per request.", "operationId": "ScenariosControllerV3_exportScenarios_v3", "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExportScenariosBodyDto" } } } }, "responses": { "200": { "description": "The scenario blueprints. Each line of the response is one scenario record.", "content": { "application/x-ndjson": { "schema": { "$ref": "#/components/schemas/ExportScenarioRecordDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "At least one scenarioId must be provided.", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Scenario(s) not found: 123, 456.", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Export scenario blueprints", "tags": [ "Scenarios" ] } }, "/api/v3/scenarios/dependents": { "get": { "description": "Reverse dependency lookup. Returns the scenarios (id, name) in the organization that reference the given resource (`kind` + `id`). Returns an empty array when nothing depends on it. For kinds whose dependents are hierarchical rather than flat (currently `scenario`, via chain-calling), each item's own dependents are nested one level deeper under `dependents`; omitted entirely for flat kinds.", "operationId": "ScenariosControllerV3_getDependents_v3", "parameters": [ { "name": "kind", "required": true, "in": "query", "description": "Type of resource to look up scenarios by", "schema": { "enum": [ "hook", "dataStore", "dataStructure", "connection", "key", "scenario" ], "type": "string" } }, { "name": "id", "required": true, "in": "query", "description": "ID of the resource", "schema": { "example": 42, "type": "number" } }, { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Scenarios that depend on the resource", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ScenarioDependentDto" } } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Unsupported dependency kind", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "User lacks access to the resource", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List scenarios that depend on a resource", "tags": [ "Scenarios" ] } }, "/api/v3/scenarios/{scenarioId}": { "get": { "description": "Returns the scenario details and full blueprint for the given scenario.", "operationId": "ScenariosControllerV3_getScenario_v3", "parameters": [ { "name": "scenarioId", "required": true, "in": "path", "description": "Scenario ID", "schema": { "example": 123, "type": "number" } }, { "name": "fields", "required": false, "in": "query", "description": "Comma-separated list of fields to include in the response.\n\nAllowed fields:\n- id\n- name\n- teamId\n- description\n- folderId\n- usedPackages\n- isInvalid\n- isActive\n- isLocked\n- isPaused\n- isWaiting\n- sequential\n- lastEdit\n- scheduling\n- hookId\n- deleted\n- deletedBy\n- blueprint", "schema": { "example": "id,name", "type": "string" } } ], "responses": { "200": { "description": "Scenario details and blueprint", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScenarioPublicBlueprintDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "scenarioId must be a number string", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get scenario by ID", "tags": [ "Scenarios" ] }, "delete": { "description": "Force delete of a scenario — atomic, always proceeds.\n\n**Soft block**\n- Parent scenarios (chain): if this scenario is a child in a chain, deleting it stops and marks invalid every parent scenario that calls it, and removes the parent–child relationships. This is a side-effect of the delete, not a block. See which parents depend on it beforehand via `GET /api/v3/scenarios/dependents?kind=scenario&id={scenarioId}`.", "operationId": "ScenariosControllerV3_deleteScenario_v3", "parameters": [ { "name": "scenarioId", "required": true, "in": "path", "description": "Scenario ID", "schema": { "example": 123, "type": "number" } } ], "responses": { "204": { "description": "Scenario deleted successfully." }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Delete scenario", "tags": [ "Scenarios" ] } }, "/api/v3/scenarios": { "get": { "description": "Returns a paginated, filterable list of scenarios in the organization.\n\nSupply `teamId` in the property query to restrict results to one team.\n\n**Recycle bin:** pass `property=deleted==true` to list soft-deleted (binned) scenarios instead of active ones. When this filter is present, results are further gated by the `resource_restore` permission — users only see deleted scenarios they're allowed to restore. Without the `deleted` filter, only active scenarios are returned.", "operationId": "ScenariosControllerV3_getScenarios_v3", "parameters": [ { "name": "fields", "required": false, "in": "query", "description": "Comma-separated list of fields to include in the response.\n\nAllowed fields:\n- id\n- name\n- teamId\n- description\n- folderId\n- usedPackages\n- isInvalid\n- isActive\n- isLocked\n- isPaused\n- isWaiting\n- sequential\n- lastEdit\n- scheduling\n- hookId\n- deleted\n- deletedBy", "schema": { "example": "id,name", "type": "string" } }, { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- id\n- name\n- teamId\n- description\n- folderId\n- isInvalid\n- isActive\n- isLocked\n- isPaused\n- lastEdit\n- hookId\n- deleted\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: id, name, lastEdit.", "schema": { "example": "+id", "type": "string" } } ], "responses": { "200": { "description": "Successfully retrieved paged scenarios", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetScenariosListResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "\"teamId\" has to be set.", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List scenarios", "tags": [ "Scenarios" ] } }, "/api/v3/scenarios/{scenarioId}/dependencies": { "get": { "description": "Returns the connections, keys, data stores, hooks, and data structures referenced by the scenario blueprint.", "operationId": "ScenariosControllerV3_getScenarioDependency_v3", "parameters": [ { "name": "scenarioId", "required": true, "in": "path", "description": "Scenario ID", "schema": { "example": 123, "type": "number" } } ], "responses": { "200": { "description": "Dependencies used by the scenario (connections, keys, data stores, hooks, data structures)", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScenarioDependenciesResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get scenario dependencies", "tags": [ "Scenarios" ] } }, "/api/v3/scenarios/{scenarioId}/clone": { "post": { "description": "Creates a copy of the scenario in the target team, applying dependency replacements from the body.\nThe response body contains the new scenario ID; the `Location` header points to the new resource.\n\n**Rules**\n- **Same team**: existing connections may be reused; you can omit replacements for them.\n- **Different team**: connections cannot be reused; provide replacements for each required connection.\n- If the source scenario uses a **hook**, provide an unused hook in the replacements.\n- For **data stores, data structures, and keys**: if you supply IDs in the request, those are used; otherwise they are duplicated in the target team.", "operationId": "ScenariosControllerV3_cloneScenario_v3", "parameters": [ { "name": "scenarioId", "required": true, "in": "path", "description": "Source scenario ID to clone", "schema": { "example": 123, "type": "number" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CloneScenarioRequestDto" } } } }, "responses": { "201": { "description": "New scenario created; response body contains its ID. `Location` header is set to the new scenario URL.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CloneScenarioResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Correct hook should be provided", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Clone scenario", "tags": [ "Scenarios" ] } }, "/api/v3/scenarios/{scenarioId}/versions": { "get": { "description": "Returns a paginated, filterable list of versions for the given scenario.", "operationId": "ScenarioVersionsControllerV3_getScenarioVersions_v3", "parameters": [ { "name": "scenarioId", "required": true, "in": "path", "description": "Scenario ID", "schema": { "example": 123, "type": "number" } }, { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- version\n- createdAt\n- comment\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: version, createdAt.", "schema": { "example": "+id", "type": "string" } } ], "responses": { "200": { "description": "Successfully retrieved paged scenario versions", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetScenarioVersionsListResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List scenario versions", "tags": [ "Scenario Versions" ] } }, "/api/v3/scenarios/{scenarioId}/versions/{version}": { "get": { "description": "Returns the blueprint and metadata for a specific version of the scenario.", "operationId": "ScenarioVersionsControllerV3_getScenarioVersionBlueprint_v3", "parameters": [ { "name": "scenarioId", "required": true, "in": "path", "description": "Scenario ID", "schema": { "example": 123, "type": "number" } }, { "name": "version", "required": true, "in": "path", "description": "Scenario version number", "schema": { "example": 3, "type": "number" } } ], "responses": { "200": { "description": "Scenario version blueprint and metadata", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScenarioVersionBlueprintDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get scenario version blueprint", "tags": [ "Scenario Versions" ] } }, "/api/v3/folders": { "get": { "description": "Returns folders for the organization with scenario counts.", "operationId": "FoldersControllerV3_getFolders_v3", "parameters": [ { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- id\n- name\n- teamId\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: id, name, scenariosTotal.", "schema": { "example": "+id", "type": "string" } } ], "responses": { "200": { "description": "Folders for the organization", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FoldersSearchResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get folders", "tags": [ "Folders" ] }, "post": { "description": "Creates a folder for organizing scenarios in the team.", "operationId": "FoldersControllerV3_createFolder_v3", "parameters": [], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateFolderRequestDto" } } } }, "responses": { "201": { "description": "Folder created", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateFolderResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Create a folder", "tags": [ "Folders" ] } }, "/api/v3/folders/{folderId}": { "delete": { "description": "Deletes a folder", "operationId": "FoldersControllerV3_deleteFolder_v3", "parameters": [ { "name": "folderId", "required": true, "in": "path", "schema": { "example": 501, "type": "number" } }, { "name": "x-organization-id", "in": "header", "description": "Fusion organization ID", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "Folder deleted" }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Delete folder", "tags": [ "Folders" ] }, "patch": { "description": "Updates the folder.", "operationId": "FoldersControllerV3_updateFolder_v3", "parameters": [ { "name": "folderId", "required": true, "in": "path", "schema": { "example": 501, "type": "number" } }, { "name": "x-organization-id", "in": "header", "description": "Fusion organization ID", "required": true, "schema": { "type": "string" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateFolderRequestDto" } } } }, "responses": { "200": { "description": "Folder updated", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FolderDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Update folder", "tags": [ "Folders" ] } }, "/api/v3/activity-logs": { "get": { "description": "Returns a paged list of activity logs using cursor-based paging and property filters.", "operationId": "ActivityLogsV3Controller_getActivityLogsByHeader", "parameters": [ { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- timestamp\n- messageId\n- userId\n- userName\n- teamId\n- teamName\n- entity\n- entityId\n- action\n- message\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: timestamp.", "schema": { "example": "+id", "type": "string" } }, { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successfully retrieved paged activity logs", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ActivityLogsResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Paging parameters require orderby to be specified", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get activity logs", "tags": [ "Activity Logs" ] } }, "/api/v3/activity-logs/export": { "get": { "description": "\nExports activity logs as CSV or XLSX based on the Accept header. Use this endpoint to download activity logs for offline analysis, compliance reporting, or integration with external tools.\n\n**Export Formats:**\n\n- **CSV**: Set `Accept: text/csv` (default)\n- **Excel**: Set `Accept: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`\n\n**Note:** Large exports may take several seconds to generate.\n ", "operationId": "ActivityLogsV3Controller_exportActivityLogsByHeader", "parameters": [ { "name": "accept", "required": false, "in": "header", "description": "\nResponse media type for the exported file.\n\n**Supported values:**\n\n- CSV: Set Accept: text/csv (default)\n- Excel: Set Accept: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\n ", "schema": { "type": "string" } }, { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- timestamp\n- messageId\n- userId\n- userName\n- teamId\n- teamName\n- entity\n- entityId\n- action\n- message\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: timestamp.", "schema": { "example": "+id", "type": "string" } }, { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string" } } ], "responses": { "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "406": { "description": "Not acceptable", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "NotAcceptable", "status": 406, "title": "Supported formats: text/csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Export activity logs", "tags": [ "Activity Logs" ] } }, "/api/v3/operations": { "get": { "description": "Retrieves operation counts for an organization, optionally filtered by team, scenario, and/or package, with optional grouping by dimension.\n\n**Grouping:** Use the `groupby` parameter to break down operation counts by `team`, `scenario`, `package`, or `module`. When set, each time-period entry in the response includes a nested array broken down by the chosen group.\n\n**Date Range:** The `from` and `to` parameters define the time window. The maximum allowed range is 1 year. Results are automatically grouped by `day` or `month` depending on the range.", "operationId": "OperationsV3Controller_getOperations", "parameters": [ { "name": "from", "required": true, "in": "query", "description": "Start date in ISO 8601 format (UTC). Defines the beginning of the date range for operation counts.\n\n**Note:** Date range between `from` and `to` cannot exceed 1 year.", "schema": { "example": "2025-01-01T12:00:00.000Z", "type": "string" } }, { "name": "to", "required": true, "in": "query", "description": "End date in ISO 8601 format (UTC). Defines the end of the date range for operation counts.\n\n**Note:** Date range between `from` and `to` cannot exceed 1 year.", "schema": { "example": "2025-02-01T12:00:00.000Z", "type": "string" } }, { "name": "teamId", "required": false, "in": "query", "description": "Filter results to a specific team. When provided, only operations for this team are returned.", "schema": { "example": 67890, "type": "number" } }, { "name": "scenarioId", "required": false, "in": "query", "description": "Filter results to a specific scenario.\n\n**Note:** Requires `teamId` to also be specified.", "schema": { "example": 11111, "type": "number" } }, { "name": "package", "required": false, "in": "query", "description": "Filter results to a specific package name.\n\n**Note:** Requires `scenarioId` to also be specified.", "schema": { "example": "workfront-workfront", "type": "string" } }, { "name": "groupby", "required": false, "in": "query", "description": "Group operation counts by a specific dimension. When set, each time-period entry in the response includes a nested array broken down by the chosen group.\n\n**Available Groups:**\n- `module` - Group by module name\n- `package` - Group by package name\n- `scenario` - Group by scenario ID\n- `team` - Group by team ID", "schema": { "enum": [ "module", "package", "scenario", "team" ], "type": "string" } }, { "name": "orderby", "required": false, "in": "query", "description": "Sort results by timestamp. Prefix with `+` for ascending or `-` for descending.\n\n**Values:**\n- `+timestamp` - Oldest first (ascending)\n- `-timestamp` - Newest first (descending)\n\n**Default:** Oldest first (`+timestamp`).", "schema": { "example": "-timestamp", "type": "string" } }, { "name": "property", "required": false, "in": "query", "description": "Filter results by operations count. When `groupby` is used, filters the nested arrays by their operations value.\n\n**Format:** `operations`\n\n**Operators:**\n- `==` equals\n- `!=` not equals\n- `>` greater than\n- `>=` greater than or equal to\n- `<` less than\n- `<=` less than or equal to", "schema": { "example": "operations>=100", "type": "string" } } ], "responses": { "200": { "description": "Successfully retrieved operation counts", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OperationsResponseV3Dto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Validation failed", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332", "x-gw-ims-org-id": "1234567890ABCDEF@AdobeOrg", "errors": [ "teamId must be a number conforming to the specified constraints" ] } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get operations count", "tags": [ "Operations" ] } }, "/api/v3/operations/summary": { "get": { "description": "Retrieves a summary of total operation counts for an organization, broken down by scenario and team. Use this endpoint to get a high-level overview of operation consumption without time-series data.\n\n**Date Range:** The `from` and `to` parameters define the time window for aggregation. The maximum allowed range is 1 year.", "operationId": "OperationsV3Controller_getSummaryByOrg", "parameters": [ { "name": "from", "required": true, "in": "query", "description": "Start date in ISO 8601 format (UTC). Defines the beginning of the date range for the summary.\n\n**Note:** Date range between `from` and `to` cannot exceed 1 year.", "schema": { "example": "2025-01-01T12:00:00.000Z", "type": "string" } }, { "name": "to", "required": true, "in": "query", "description": "End date in ISO 8601 format (UTC). Defines the end of the date range for the summary.\n\n**Note:** Date range between `from` and `to` cannot exceed 1 year.", "schema": { "example": "2025-02-01T12:00:00.000Z", "type": "string" } }, { "name": "teamId", "required": false, "in": "query", "description": "Filter results to a specific team. When provided, only scenarios belonging to this team are included in the summary.", "schema": { "example": 67890, "type": "number" } }, { "name": "scenarioId", "required": false, "in": "query", "description": "Filter results to a specific scenario. Returns the operation count for this single scenario.", "schema": { "example": 11111, "type": "number" } }, { "name": "package", "required": false, "in": "query", "description": "Filter results to a specific package name.", "schema": { "example": "workfront-workfront", "type": "string" } }, { "name": "orderby", "required": false, "in": "query", "description": "Sort summary results by field. Prefix with `+` for ascending or `-` for descending.\n\n**Sortable Fields:**\n- `scenarioId` - Sort by scenario ID\n- `teamId` - Sort by team ID\n- `operations` - Sort by operation count\n\n**Default:** `-operations` (highest operation count first).", "schema": { "example": "-operations", "type": "string" } }, { "name": "property", "required": false, "in": "query", "description": "Filter scenarios by their total operations count within the specified date range.\n\n**Format:** `operations`\n\n**Operators:**\n- `==` equals\n- `!=` not equals\n- `>` greater than\n- `>=` greater than or equal to\n- `<` less than\n- `<=` less than or equal to", "schema": { "example": "operations>=100", "type": "string" } } ], "responses": { "200": { "description": "Successfully retrieved operations summary", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OperationsV3SummaryResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Validation failed", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332", "x-gw-ims-org-id": "1234567890ABCDEF@AdobeOrg", "errors": [ "teamId must be a number conforming to the specified constraints" ] } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get operations summary", "tags": [ "Operations" ] } }, "/api/v3/connections": { "get": { "description": "Returns a paginated, filterable list of connections in the organization. Supply `teamId` in the property query to restrict results to one team.", "operationId": "ConnectionsV3Controller_getConnections_v3", "parameters": [ { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- id\n- name\n- accountName\n- accountType\n- expire\n- teamId\n- scopesCount\n- editable\n- uid\n- environmentType\n- authenticationType\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: id, name, accountName, expire.", "schema": { "example": "+id", "type": "string" } } ], "responses": { "200": { "description": "Successfully retrieved paged connections", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetConnectionsListResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Invalid orderby or property filter", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Caller lacks organization-view permission", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List connections", "tags": [ "Connections" ] } }, "/api/v3/connections/{connectionId}": { "get": { "description": "Returns the full details of a single connection", "operationId": "ConnectionsV3Controller_getConnectionDetails_v3", "parameters": [ { "name": "connectionId", "required": true, "in": "path", "description": "Connection ID", "schema": { "example": 12345, "type": "number" } } ], "responses": { "200": { "description": "Returns the connection details", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConnectionDetailsV3Response" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "connectionId must be an integer", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Connection not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get connection by ID", "tags": [ "Connections" ] }, "delete": { "description": "Force delete of a connection.\n\n**Hard block**\n- Hooks: rejected with `409` while a hook still depends on it. Look them up via `GET /api/v3/hooks/dependents?kind=connection&id={connectionId}` and remove the hook first.\n\n**Soft block**\n- Scenarios: deletion proceeds and detaches the connection from any scenarios that use it. See those scenarios beforehand via `GET /api/v3/scenarios/dependents?kind=connection&id={connectionId}`.", "operationId": "ConnectionsV3Controller_deleteConnection_v3", "parameters": [ { "name": "connectionId", "required": true, "in": "path", "description": "Connection ID", "schema": { "example": 12345, "type": "number" } }, { "name": "authorization", "required": true, "in": "header", "schema": { "type": "string" } } ], "responses": { "204": { "description": "Connection deleted" }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "connectionId must be an integer", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Connection not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "409": { "description": "Resource conflict", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceConflict", "status": 409, "title": "Connection is used by hooks and cannot be deleted.", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Delete connection", "tags": [ "Connections" ] } }, "/api/v3/connections/{connectionId}/scenarios": { "get": { "description": "Returns a paginated list of scenarios that reference the given connection.", "operationId": "ConnectionsV3Controller_getConnectionScenarios_v3", "parameters": [ { "name": "connectionId", "required": true, "in": "path", "description": "Connection ID", "schema": { "example": 12345, "type": "number" } }, { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- id\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: id.", "schema": { "example": "+id", "type": "string" } } ], "responses": { "200": { "description": "Paginated list of scenarios that use this connection.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConnectionScenariosV3Response" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "connectionId must be an integer", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Connection not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List scenarios for a connection", "tags": [ "Connections" ] } }, "/api/v3/keys": { "get": { "description": "Returns a paginated, filterable list of keys in the organization that the requesting user is permitted to view. Supply `teamId` in the property query to restrict results to one team.", "operationId": "KeysV3Controller_getKeys_v3", "parameters": [ { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- id\n- name\n- typeName\n- teamId\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: id, name.", "schema": { "example": "+id", "type": "string" } } ], "responses": { "200": { "description": "Successfully retrieved paged keys", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/KeysListV3ResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List keys", "tags": [ "Keys" ] } }, "/api/v3/keys/{id}": { "get": { "description": "Returns a single key in the caller’s organization.", "operationId": "KeysV3Controller_getKeyById_v3", "parameters": [ { "name": "id", "required": true, "in": "path", "description": "Key ID", "schema": { "example": 1, "type": "number" } } ], "responses": { "200": { "description": "The requested key", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/KeyV3ResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get a key by ID", "tags": [ "Keys" ] }, "delete": { "description": "Force delete of a key.\n\n**Soft block**\n- Scenarios: deletion no longer prompts or blocks even if scenarios use the key. See which scenarios use it beforehand via `GET /api/v3/scenarios/dependents?kind=key&id={id}`.", "operationId": "KeysV3Controller_deleteKey_v3", "parameters": [ { "name": "id", "required": true, "in": "path", "description": "Key ID", "schema": { "example": 1, "type": "number" } } ], "responses": { "204": { "description": "Key deleted" }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "id must be an integer", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Key not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Delete key", "tags": [ "Keys" ] } }, "/api/v3/hooks/dependents": { "get": { "description": "Reverse dependency lookup. Returns the hooks (id, name) in the organization that reference the given resource (`kind` + `id`). Only `kind=connection` is supported. Returns an empty array when nothing depends on it.", "operationId": "HooksV3Controller_getDependents_v3", "parameters": [ { "name": "kind", "required": true, "in": "query", "description": "Type of resource to look up hooks by (only `connection`).", "schema": { "enum": [ "connection" ], "type": "string" } }, { "name": "id", "required": true, "in": "query", "description": "ID of the resource.", "schema": { "example": 789, "type": "number" } }, { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string", "example": "12989" } } ], "responses": { "200": { "description": "Hooks that depend on the resource.", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/HookDependentDto" } } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Unsupported dependency kind", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "User lacks access to the connection", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List hooks that depend on a resource", "tags": [ "Hooks" ] } }, "/api/v3/hooks/{hookId}/clone": { "post": { "description": "Creates a copy of an existing hook. The clone is created in the source hook's team by default, or in the team given by `teamId` in the request body; the caller must have permission to add hooks to the resolved team. Reference replacements (connection, data structure, key) can be supplied to re-point the clone at other resources.", "operationId": "HooksV3Controller_clone_v3", "parameters": [ { "name": "hookId", "required": true, "in": "path", "description": "Numeric ID of the hook to clone.", "schema": { "example": 15473, "type": "number" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CloneHookV3Dto" } } } }, "responses": { "201": { "description": "Hook cloned successfully.", "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "type": "number", "example": 15499 }, "name": { "type": "string", "example": "My Hook (clone)" }, "url": { "type": "string", "example": "https://hook.example.com/abc123" } } } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Clone a hook", "tags": [ "Hooks" ] } }, "/api/v3/hooks/{hookId}": { "get": { "description": "Returns the full details of a single hook, including its configuration data and external references. Use this endpoint when you need the complete hook payload — for example, to inspect event subscription data or verify the hook URL before triggering events.", "operationId": "HooksV3Controller_get_v3", "parameters": [ { "name": "hookId", "required": true, "in": "path", "description": "Numeric ID of the hook to retrieve.", "schema": { "example": 15473, "type": "number" } } ], "responses": { "200": { "description": "Hook details retrieved successfully.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HookV3Dto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get a hook by ID", "tags": [ "Hooks" ] }, "delete": { "description": "Force delete of a hook. Any events still queued for the hook are removed with it.\n\n**Soft block**\n- Scenarios: deletion does not prompt or block even if scenarios use the hook. See which scenarios use it beforehand via `GET /api/v3/scenarios/dependents?kind=hook&id={hookId}`.", "operationId": "HooksV3Controller_delete_v3", "parameters": [ { "name": "hookId", "required": true, "in": "path", "description": "Numeric ID of the hook to delete", "schema": { "example": 123, "type": "number" } } ], "responses": { "204": { "description": "Hook deleted." }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Hook ID must be a number", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Only the creator of the hook can delete it.", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Hook not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Delete hook", "tags": [ "Hooks" ] } }, "/api/v3/hooks/{hookId}/dependencies": { "get": { "description": "Returns the connection, data structure, and key referenced by the hook, as a flat list of dependency items. Each reference is read as the caller, so a reference the caller cannot access fails with 403.", "operationId": "HooksV3Controller_getDependencies_v3", "parameters": [ { "name": "hookId", "required": true, "in": "path", "description": "Numeric ID of the hook.", "schema": { "example": 15473, "type": "number" } } ], "responses": { "200": { "description": "Dependencies used by the hook (connections, keys, data structures).", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HookDependenciesResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get hook dependencies", "tags": [ "Hooks" ] } }, "/api/v3/hooks": { "get": { "description": "Returns a paginated list of hooks in the caller organization that the requesting user is permitted to view.", "operationId": "HooksV3Controller_getWebhooks_v3", "parameters": [ { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- id\n- name\n- teamId\n- udid\n- type\n- enabled\n- gone\n- typeName\n- scenarioId\n- priority\n- detached\n- automationType\n- automationId\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: id, name, teamId, udid, type, priority.", "schema": { "example": "+id", "type": "string" } } ], "responses": { "200": { "description": "Paginated list of hooks matching the provided search criteria.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetHooksListResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List hooks", "tags": [ "Hooks" ] } }, "/api/v3/hooks/{hookId}/queue": { "get": { "description": "Returns a paginated list of queued webhook events for the specified hook. Results can be filtered and sorted by received time and processing state.", "operationId": "HooksV3Controller_getQueue_v3", "parameters": [ { "name": "hookId", "required": true, "in": "path", "description": "Numeric ID of the hook whose queue to list.", "schema": { "example": 15473, "type": "number" } }, { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- id\n- size\n- createdAt\n- processing\n- processingStartedAt\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: id, size, createdAt, processingStartedAt.", "schema": { "example": "+id", "type": "string" } } ], "responses": { "200": { "description": "Paginated list of queued webhook events matching the provided search criteria.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetQueueListResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List hook queue", "tags": [ "Hooks" ] }, "delete": { "description": "Deletes queued webhook events for the specified hook. Provide a specific set of ids via repeated params (`?id=a&id=b`, max 50), or `?all=true` to clear the queue (optionally excluding `?except=a&except=b`). Returns the ids that were deleted plus any that could not be (with a reason); if any id fails, the response status is 409 while the deletable rows are still removed. If a concurrent delete is already running for this hook the request is rejected with 423 (retry once it completes).", "operationId": "HooksV3Controller_deleteQueue_v3", "parameters": [ { "name": "hookId", "required": true, "in": "path", "description": "Numeric ID of the hook whose queue to delete from.", "schema": { "example": 15473, "type": "number" } }, { "name": "id", "required": false, "in": "query", "description": "Ids to delete. Comma-separated (`id=1,2,3`) or repeated (`id=1&id=2`). Mutually exclusive with `all`.", "schema": { "example": [ "1", "2", "3" ], "type": "array", "items": { "type": "string" } } }, { "name": "all", "required": false, "in": "query", "description": "Delete every resource in scope. Mutually exclusive with `id`.", "schema": { "type": "boolean" } }, { "name": "except", "required": false, "in": "query", "description": "Ids to exclude. Only allowed together with `all=true`.", "schema": { "type": "array", "items": { "type": "string" } } } ], "responses": { "200": { "description": "All requested events were deleted. `deleted` lists them; `failed` is empty.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeleteQueueV3ResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Invalid queue entry id", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Hook not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "409": { "description": "At least one event could not be deleted, so the request is flagged as failed (deletable rows are still removed). `deleted` and `failed` report the per-id outcome.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeleteQueueV3ResponseDto" } } } }, "423": { "description": "Resource locked", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceLocked", "status": 423, "title": "A delete operation is already in progress for this hook.", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Delete hook queue", "tags": [ "Hooks" ] } }, "/api/v3/hooks/{hookId}/queue/stats": { "get": { "description": "Returns queue statistics for the specified hook: the number of events currently queued, the queue limit, and whether the hook is enabled.", "operationId": "HooksV3Controller_getQueueStats_v3", "parameters": [ { "name": "hookId", "required": true, "in": "path", "description": "Numeric ID of the hook whose queue statistics to retrieve.", "schema": { "example": 15473, "type": "number" } } ], "responses": { "200": { "description": "Queue statistics retrieved successfully.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueueStatsV3Dto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get hook queue statistics", "tags": [ "Hooks" ] } }, "/api/v3/hooks/{hookId}/queue/{itemId}": { "get": { "description": "Returns the full detail of a single queued webhook event for the specified hook, including its decoded payload.", "operationId": "HooksV3Controller_getQueueDetail_v3", "parameters": [ { "name": "hookId", "required": true, "in": "path", "description": "Numeric ID of the hook the queued webhook event belongs to.", "schema": { "example": 15473, "type": "number" } }, { "name": "itemId", "required": true, "in": "path", "description": "Unique identifier (UUID) of the queued webhook event to retrieve.", "schema": { "example": "aa860f530c334e8e8455da888c8d0970", "type": "string" } } ], "responses": { "200": { "description": "Queue entry detail retrieved successfully.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueueDetailV3Dto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get a hook queue item by ID", "tags": [ "Hooks" ] } }, "/api/v3/data-stores": { "get": { "operationId": "DataStoresV3Controller_list_v3", "parameters": [ { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- id\n- name\n- teamId\n- records\n- size\n- maxSize\n- dataStructureId\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: id, name, records, size, maxSize, dataStructureId.", "schema": { "example": "+id", "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DataStoreListSearchResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List data stores", "tags": [ "Data Stores" ] } }, "/api/v3/data-stores/dependents": { "get": { "description": "Reverse dependency lookup. Returns the data stores (id, name) in the organization that reference the given resource (`kind` + `id`). Only `kind=dataStructure` is supported. Returns an empty array when nothing depends on it.", "operationId": "DataStoresV3Controller_getDependents_v3", "parameters": [ { "name": "kind", "required": true, "in": "query", "description": "Type of resource to look up data stores by (only `dataStructure`).", "schema": { "enum": [ "dataStructure" ], "type": "string" } }, { "name": "id", "required": true, "in": "query", "description": "ID of the resource.", "schema": { "minimum": 1, "example": 42, "type": "number" } }, { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Data stores that depend on the resource.", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/DataStoreDependentDto" } } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Unsupported dependency kind", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "User lacks access to the data structure", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List data stores that depend on a resource", "tags": [ "Data Stores" ] } }, "/api/v3/data-stores/{id}": { "get": { "description": "Returns data store metadata and usage metrics. Size fields are in bytes; record count is a unitless integer.", "operationId": "DataStoresV3Controller_getById_v3", "parameters": [ { "name": "id", "required": true, "in": "path", "description": "Numeric ID of the data store to retrieve", "schema": { "example": 1, "type": "number" } } ], "responses": { "200": { "description": "Data store metadata and usage metrics (records, size and maxSize in bytes)", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DataStoreListItemResponseV3Dto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get a data store by ID", "tags": [ "Data Stores" ] }, "delete": { "description": "Force delete of a data store.\n\n**Hard block**\n- Scenarios: rejected with `409` while any scenario is still using this data store (the response lists the blocking scenarios). Look them up via `GET /api/v3/scenarios/dependents?kind=dataStore&id={id}` and remove or repoint them first.", "operationId": "DataStoresV3Controller_delete_v3", "parameters": [ { "name": "id", "required": true, "in": "path", "description": "Numeric ID of the data store to delete", "schema": { "example": 1, "type": "number" } }, { "name": "authorization", "required": true, "in": "header", "schema": { "type": "string" } } ], "responses": { "204": { "description": "Data store deleted successfully" }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Data store ID must be a number", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Data store not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "409": { "description": "Resource conflict", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceConflict", "status": 409, "title": "Data store is used by scenarios and cannot be deleted.", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332", "scenarios": [ { "id": 1, "name": "My scenario" } ] } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Delete data store", "tags": [ "Data Stores" ] } }, "/api/v3/data-stores/{dataStoreId}/data": { "get": { "description": "Returns a paginated page of records, ordered by the store. Page with limit (1-200, default 50) and start (a numeric row offset, default 0). The store has no stable sortable field, so filtering/ordering by record data is not supported.", "operationId": "DataStoresDataV3Controller_getData_v3", "parameters": [ { "name": "dataStoreId", "required": true, "in": "path", "description": "Numeric ID of the data store", "schema": { "example": 1, "type": "number" } }, { "name": "limit", "required": false, "in": "query", "description": "Page size, 1-200 (default 50)", "schema": { "example": 50, "type": "number" } }, { "name": "start", "required": false, "in": "query", "description": "Numeric row offset to start the page at (default 0)", "schema": { "example": 0, "type": "number" } } ], "responses": { "200": { "description": "Paginated records envelope", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DataStoreDataListSearchResponseV3Dto" } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "503": { "description": "Service unavailable", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ServiceUnavailable", "status": 503, "title": "Data store not installed", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List data store records", "tags": [ "Data Stores" ] }, "delete": { "description": "Force delete of multiple records — the delete always proceeds and reports per-key outcomes. Pass record keys in `id` (comma-separated or repeated), or `all=true` to delete every key. `except` applies only with `all=true`. Returns the keys deleted plus any that failed, and downgrades to 409 when any key failed.", "operationId": "DataStoresDataV3Controller_deleteDataMulti_v3", "parameters": [ { "name": "dataStoreId", "required": true, "in": "path", "description": "Numeric ID of the data store", "schema": { "example": 1, "type": "number" } }, { "name": "id", "required": false, "in": "query", "description": "Ids to delete. Comma-separated (`id=1,2,3`) or repeated (`id=1&id=2`). Mutually exclusive with `all`.", "schema": { "example": [ "1", "2", "3" ], "type": "array", "items": { "type": "string" } } }, { "name": "all", "required": false, "in": "query", "description": "Delete every resource in scope. Mutually exclusive with `id`.", "schema": { "type": "boolean" } }, { "name": "except", "required": false, "in": "query", "description": "Ids to exclude. Only allowed together with `all=true`.", "schema": { "type": "array", "items": { "type": "string" } } } ], "responses": { "200": { "description": "Records deleted (partial-failure envelope)", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DataStoreDataDeleteResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Data store ID must be a number", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Data store not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "409": { "description": "Some records could not be deleted", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DataStoreDataDeleteResponseDto" } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "503": { "description": "Service unavailable", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ServiceUnavailable", "status": 503, "title": "Data store not installed", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Delete data store records", "tags": [ "Data Stores" ] } }, "/api/v3/logs": { "get": { "description": "Returns a paginated list of executions for the specified resource. To narrow results, filter by status — for example, use `property=status==3` to see failed executions or `property=status==2` to see executions that completed with warnings.", "operationId": "PublicLogController_getExecutions[1]_v3", "parameters": [ { "name": "scenarioId", "required": false, "in": "query", "description": "Scenario identifier. Mutually exclusive with dlqId.", "schema": { "type": "string" } }, { "name": "dlqId", "required": false, "in": "query", "description": "Incomplete execution (DLQ) identifier. Mutually exclusive with scenarioId.", "schema": { "type": "string" } }, { "name": "showCheckRuns", "required": false, "in": "query", "description": "Include small check-run executions", "schema": { "default": false, "type": "boolean" } }, { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- id\n- status\n- timestamp\n- duration\n- bundles\n- operations\n- transfer\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: timestamp, duration, bundles, operations.", "schema": { "example": "+id", "type": "string" } } ], "responses": { "200": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutionSearchResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad Request: exactly one of scenarioId or dlqId is required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List Executions", "tags": [ "Logs" ] } }, "/api/v3/logs/{executionId}": { "get": { "description": "Returns a summary of a single execution by its execution ID, including metadata about the object it belongs to.", "operationId": "PublicLogController_getExecutionById[1]_v3", "parameters": [ { "name": "executionId", "required": true, "in": "path", "schema": { "type": "string" } }, { "name": "scenarioId", "required": false, "in": "query", "description": "Scenario identifier. Mutually exclusive with dlqId.", "schema": { "type": "string" } }, { "name": "dlqId", "required": false, "in": "query", "description": "Incomplete execution (DLQ) identifier. Mutually exclusive with scenarioId.", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Details of the Execution", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutionDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad Request: exactly one of scenarioId or dlqId is required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get Execution", "tags": [ "Logs" ] } }, "/api/v3/data-structures": { "get": { "description": "Returns a cursor-paginated, filterable list of data structures scoped to the org. Supply ?property=teamId==X to restrict to one team.", "operationId": "DataStructuresControllerV3_search_v3", "parameters": [ { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- id\n- name\n- strict\n- teamId\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: id, name.", "schema": { "example": "+id", "type": "string" } } ], "responses": { "200": { "description": "Successfully retrieved paged data structures", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DataStructuresSearchResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List data structures", "tags": [ "Data Structures" ] } }, "/api/v3/data-structures/{id}": { "get": { "description": "Retrieves a single data structure by its ID, scoped to the caller's organization.", "operationId": "DataStructuresControllerV3_findOne_v3", "parameters": [ { "name": "id", "required": true, "in": "path", "description": "Data structure ID", "schema": { "example": 123, "type": "number" } } ], "responses": { "200": { "description": "The data structure was found", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DataStructureResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Bad request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Resource not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get a data structure by ID", "tags": [ "Data Structures" ] }, "delete": { "description": "Force delete of a data structure.\n\n**Hard block**\n- Data stores: rejected with `409` while a data store still uses it. Look them up via `GET /api/v3/data-stores/dependents?kind=dataStructure&id={id}` and remove or repoint them first.\n\n**Soft block**\n- Scenarios: deletion proceeds even if scenarios reference it. Check them beforehand via `GET /api/v3/scenarios/dependents?kind=dataStructure&id={id}` and warn client-side if needed.", "operationId": "DataStructuresControllerV3_delete_v3", "parameters": [ { "name": "id", "required": true, "in": "path", "description": "Data structure ID", "schema": { "example": 123, "type": "number" } }, { "name": "authorization", "required": true, "in": "header", "schema": { "type": "string" } } ], "responses": { "204": { "description": "Data structure deleted successfully." }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Data structure ID must be a number", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Data structure not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "409": { "description": "Resource conflict", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceConflict", "status": 409, "title": "Data structure is used by data stores and cannot be deleted.", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332", "datastores": [ { "id": 501, "name": "Customer records" }, { "id": 502, "name": "Order archive" } ] } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Delete data structure", "tags": [ "Data Structures" ] } }, "/api/v3/data-structures/{id}/clone": { "post": { "description": "Copies the specification and strict mode to the source team or another team in the same organization. Requires organization view, source data structure view, and permission to add data structures to the resolved target team.", "operationId": "DataStructuresControllerV3_clone_v3", "parameters": [ { "name": "id", "required": true, "in": "path", "description": "Data structure ID", "schema": { "example": 123, "type": "number" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CloneDataStructureDto" } } } }, "responses": { "201": { "description": "Data structure cloned successfully.", "headers": { "Location": { "description": "URL of the cloned data structure.", "schema": { "type": "string", "example": "/api/v3/data-structures/456" } } }, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DataStructureResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Invalid data structure ID or clone request", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Not allowed to clone to the target team", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Data structure not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Failed to clone data structure.", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Clone a data structure", "tags": [ "Data Structures" ] } }, "/api/v3/users/me": { "get": { "description": "Returns the profile of the caller identified by the auth token, plus their full organization- and team-role arrays. Distinct from `GET /users/:userId`. The caller must have organization view permission on the `x-organization-id` org.", "operationId": "UserV3Controller_getMe_v3", "parameters": [ { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "The authorised user’s profile and roles", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserMeResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Missing or invalid x-organization-id", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Missing or invalid user token", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Caller lacks organization view permission", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Authorised user record not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get the authorised user", "tags": [ "Users" ] } }, "/api/v3/users/me/regions": { "get": { "description": "Reads the caller’s IMS profile and returns one `{ region, organizationId }` entry per Fusion organization the caller can access, so it knows which `x-gw-region` and `x-organization-id` to send on subsequent requests. No `x-organization-id` header or organization permission is required.", "operationId": "UserV3Controller_getMyRegions_v3", "parameters": [], "responses": { "200": { "description": "Regions and organizations the caller can access", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/RegionsResponseDto" } } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "IMS response missing projectedProductContext, check token scopes", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Missing or invalid IMS user token", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "502": { "description": "Bad gateway", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadGateway", "status": 502, "title": "IMS profile lookup failed", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get user regions, organizations", "tags": [ "Users" ] } }, "/api/v3/users/{userId}": { "get": { "description": "Returns one user by ID, scoped to the organization named by `x-organization-id`.", "operationId": "UserV3Controller_getUser_v3", "parameters": [ { "name": "userId", "required": true, "in": "path", "description": "Numeric Fusion user id", "schema": { "example": 42, "type": "number" } }, { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "The requested user (same shape as a list item)", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserListItemDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Missing or invalid x-organization-id, or non-numeric userId", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Caller lacks organization view permission", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "User not found in this organization", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get user by ID", "tags": [ "Users" ] } }, "/api/v3/users": { "get": { "description": "Returns the users of the organization named by `x-organization-id`, with search, sort and cursor pagination. Optionally narrow to a team within the org via `?property=teamId==`.", "operationId": "UserV3Controller_listUsers_v3", "parameters": [ { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- id (multi-value)\n- name\n- email\n- lastLogin\n- teamId\n\nFields marked \"multi-value\" accept comma-separated values with == and !=.\nExample: property=id==123,456\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: id, name, email, lastLogin.", "schema": { "example": "+id", "type": "string" } }, { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Cursor-paginated users", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UsersSearchResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Missing or invalid x-organization-id, or invalid search params", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Caller lacks organization view permission", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List users", "tags": [ "Users" ] } }, "/api/v3/teams": { "get": { "description": "Returns the teams of the organization named by `x-organization-id` that the caller can view, with search, sort and cursor pagination.", "operationId": "TeamV3Controller_listTeams_v3", "parameters": [ { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string" } }, { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- id\n- name\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: id, name.", "schema": { "example": "+id", "type": "string" } } ], "responses": { "200": { "description": "Cursor-paginated teams", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TeamsSearchResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Missing or invalid x-organization-id, or invalid search params", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Caller lacks organization view permission", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List teams in an organization", "tags": [ "Teams" ] } }, "/api/v3/teams/{teamId}": { "get": { "description": "Returns one team by ID within the organization named by `x-organization-id`. The caller must have team view permission on it.", "operationId": "TeamV3Controller_getTeam_v3", "parameters": [ { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string" } }, { "name": "teamId", "required": true, "in": "path", "description": "Numeric Fusion team id", "schema": { "example": 777, "type": "number" } } ], "responses": { "200": { "description": "The requested team (same shape as a list item)", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TeamListItemDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Non-numeric teamId, or missing/invalid x-organization-id", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Caller lacks organization view or team view permission", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Team not found in the organization", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get a team by ID", "tags": [ "Teams" ] }, "delete": { "description": "Soft-deletes the team, stops its scenarios, writes an activity log.", "operationId": "TeamV3Controller_deleteTeam_v3", "parameters": [ { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string" } }, { "name": "teamId", "required": true, "in": "path", "description": "Numeric Fusion team id", "schema": { "example": 777, "type": "number" } } ], "responses": { "204": { "description": "The team was deleted." }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Non-numeric teamId, or scenarios could not be stopped", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Caller lacks team delete permission", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Team not found in the organization", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Delete team", "tags": [ "Teams" ] } }, "/api/v3/organizations": { "get": { "description": "Returns every organization the caller can view, with search, sort and cursor pagination. The caller must have organization view permission on the `x-organization-id` org.", "operationId": "OrganizationV3Controller_listOrganizations_v3", "parameters": [ { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string" } }, { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- id\n- name\n- externalId\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: id, name.", "schema": { "example": "+id", "type": "string" } } ], "responses": { "200": { "description": "Cursor-paginated organizations", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OrganizationsSearchResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Missing or invalid x-organization-id, or invalid search params", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Missing or invalid user token", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Caller lacks organization view permission", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List organizations", "tags": [ "Organizations" ] } }, "/api/v3/organizations/current": { "get": { "description": "Returns the organization named by `x-organization-id` (same shape as a list item). The caller must have organization view permission on it.", "operationId": "OrganizationV3Controller_getCurrentOrganization_v3", "parameters": [ { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "The current organization", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OrganizationListItemDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Missing or invalid x-organization-id", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Caller lacks organization view permission", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "Organization not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get the current organization", "tags": [ "Organizations" ] } }, "/api/v3/dlqs": { "get": { "description": "Retrieves a cursor-paginated list of incomplete executions (DLQs) for an automation scenario. Supports sorting by creation date (`+created`, `-created`) and filtering via `property`. Pass `_page.next` from the previous response as `start` in subsequent requests to advance the cursor.", "operationId": "DlqV3Controller_list_v3", "parameters": [ { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string" } }, { "name": "scenarioId", "required": true, "in": "query", "description": "Automation scenario whose DLQs are listed.", "schema": { "type": "number" } }, { "name": "property", "required": false, "in": "query", "description": "```\nProperty filters. Can be repeated and are AND-ed together.\n\nAllowed fields:\n- id\n- teamId\n- created\n- size\n- resolved\n- retry\n- attempts\n- executionId\n\nSupported operators:\n- == (equals)\n- != (not equals)\n- > (greater than)\n- >= (greater than or equal)\n- < (less than)\n- <= (less than or equal)\n- ~ (case-insensitive regex match)\n\nSpecial cases:\n- field → field exists\n- !field → field does not exist\n```", "schema": { "example": [ "teamId==3849" ], "type": "array", "items": { "type": "string" } } }, { "name": "start", "required": false, "in": "query", "description": "Paging cursor. Must correspond to \"orderby\" field and used only when it is set.", "schema": { "type": "string" } }, { "name": "limit", "required": false, "in": "query", "schema": { "type": "integer", "minimum": 1, "maximum": 200, "default": 50 }, "description": "Maximum number of items to return. Must be a positive integer. Range 1–200." }, { "name": "orderby", "required": false, "in": "query", "description": "Sort property and direction, e.g. +id (ascending) or -id (descending). Allowed fields: created.", "schema": { "example": "+id", "type": "string" } } ], "responses": { "200": { "description": "Paginated list of DLQ records matching the query criteria.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DlqSearchResponseDto" } } } }, "400": { "description": "Bad request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "BadRequest", "status": 400, "title": "Invalid query parameters or filter expressions", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "List DLQs for a scenario", "tags": [ "Incomplete Executions" ] } }, "/api/v3/dlqs/{id}": { "get": { "description": "Returns full details of an incomplete execution (DLQ) by record ID, including failure reason, execution tracking IDs, and retry attempt counters.", "operationId": "DlqV3Controller_get_v3", "parameters": [ { "name": "x-organization-id", "in": "header", "required": true, "schema": { "type": "string" } }, { "name": "id", "required": true, "in": "path", "description": "Unique string identifier of the DLQ record.", "schema": { "example": "84a63c7308cf48abb63dbf935b1aa22f", "type": "string" } } ], "responses": { "200": { "description": "DLQ record details retrieved successfully.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DlqV3Dto" } } } }, "401": { "description": "Authentication required", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Unauthorized", "status": 401, "title": "Authentication required", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "403": { "description": "Access denied", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "Forbidden", "status": 403, "title": "Access denied", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "404": { "description": "Resource not found", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "ResourceNotFound", "status": 404, "title": "DLQ record not found", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } }, "500": { "description": "Server error", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponseDto" }, "example": { "type": "InternalServerError", "status": 500, "title": "Server error", "report": { "request-id": "abc-123-def-456", "x-organization-id": "2332" } } } } } }, "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ], "summary": "Get DLQ by ID", "tags": [ "Incomplete Executions" ] } } }, "components": { "schemas": { "ErrorReportDto": { "type": "object", "properties": { "request-id": { "type": "string", "description": "Request ID from headers or auto-generated UUID", "example": "req-123" }, "x-organization-id": { "type": "string", "description": "Organization ID from headers", "example": "org-456" }, "errors": { "description": "Validation errors (only present for validation failures)", "example": [ "email must be a valid email address", "password must be at least 8 characters" ], "type": "array", "items": { "type": "object" } } }, "required": [ "request-id" ] }, "ErrorResponseDto": { "type": "object", "properties": { "type": { "type": "string", "description": "Error type based on HTTP status or validation error", "example": "BadRequest" }, "status": { "type": "number", "description": "HTTP status code", "example": 400, "minimum": 400, "maximum": 599 }, "title": { "type": "string", "description": "Human-readable error message", "examples": { "badRequest": { "value": "Invalid request" }, "unauthorized": { "value": "Authentication required" }, "forbidden": { "value": "Access denied" }, "notFound": { "value": "Resource not found" }, "serverError": { "value": "Server error" }, "validationError": { "value": "Validation failed" } } }, "report": { "description": "Error report with request tracking and additional details", "allOf": [ { "$ref": "#/components/schemas/ErrorReportDto" } ] } }, "required": [ "type", "status", "title", "report" ] }, "ExportScenarioRecordDto": { "type": "object", "properties": { "scenarioId": { "type": "number", "description": "The ID of the exported scenario.", "example": 42 }, "name": { "type": "string", "description": "The name of the exported scenario.", "example": "My Firefly Scenario" }, "teamId": { "type": "number", "description": "The ID of the team that owns this scenario.", "example": 88 }, "folderId": { "type": "number", "description": "The ID of the folder the scenario belongs to, or `null` if it is not in any folder.", "example": null, "nullable": true }, "blueprint": { "type": "object", "description": "The full scenario blueprint — modules, connections, mappings, and settings exactly as configured.", "example": { "flow": [ { "id": 1, "mapper": { "n": "1", "style": { "imageReference": {} }, "locale": "en-US", "prompt": "ocean and pineapple cocktail", "extension": "default", "structure": { "imageReference": {} } }, "module": "adobe-firefly:generateAnImage2", "version": 1, "metadata": { "expect": [ { "name": "prompt", "type": "text", "label": "Prompt", "required": true }, { "name": "modelVersion", "type": "select", "label": "Model version", "validate": { "enum": [ "image3", "image3_custom", "image4_standard", "image4_ultra", "image4_custom" ] } }, { "name": "n", "type": "number", "label": "Number of variations" }, { "name": "extension", "type": "select", "label": "Generated image format", "required": true, "validate": { "enum": [ "jpeg", "png", "webp", "default" ] } }, { "name": "negativePrompt", "type": "text", "label": "Negative prompt" }, { "name": "contentClass", "type": "select", "label": "Content class", "validate": { "enum": [ "photo", "art" ] } }, { "name": "seeds", "type": "array", "label": "Seeds" }, { "name": "size", "type": "select", "label": "Size", "validate": { "enum": [ "2048,2048", "1024,1024", "2304,1792", "1792,2304", "2688,1536", "1344,768", "1152,896", "896,1152" ] } }, { "name": "visualIntensity", "type": "number", "label": "Visual intensity" }, { "name": "locale", "type": "text", "label": "Locale" }, { "name": "tileable", "type": "boolean", "label": "Tileable" }, { "name": "structure", "spec": [ { "name": "imageReference", "spec": [ { "name": "source", "type": "select", "label": "Source", "validate": { "enum": [ "file", "presignedUrl" ] } }, { "name": "strength", "type": "number", "label": "Strength" } ], "type": "collection", "label": "Image reference" } ], "type": "collection", "label": "Structure" }, { "name": "style", "spec": [ { "name": "imageReference", "spec": [ { "name": "source", "type": "select", "label": "Source", "validate": { "enum": [ "file", "presignedUrl" ] } }, { "name": "strength", "type": "number", "label": "Strength" }, { "name": "presets", "type": "array", "label": "Presets" } ], "type": "collection", "label": "Image reference" } ], "type": "collection", "label": "Style" } ], "restore": { "size": { "mode": "chose", "label": "" }, "seeds": { "mode": "chose", "items": [] }, "style": { "nested": { "imageReference": { "nested": { "source": { "mode": "chose", "label": "" }, "presets": { "mode": "chose", "items": [] } } } } }, "tileable": { "mode": "chose" }, "extension": { "mode": "chose", "label": "Default" }, "structure": { "nested": { "imageReference": { "nested": { "source": { "mode": "chose", "label": "" } } } } }, "connection": { "label": "My Adobe Firefly Connection connection" }, "contentClass": { "mode": "chose", "label": "" }, "modelVersion": { "mode": "chose", "label": "" } }, "designer": { "x": 0, "y": 0 }, "parameters": [ { "name": "connection", "type": "account", "label": "Connection", "required": true } ] }, "parameters": { "connection": 23252 } } ], "name": "Integration Adobe Firefly", "metadata": { "instant": false, "version": 1, "designer": { "orphans": [] }, "scenario": { "dlq": false, "dataloss": false, "maxErrors": 3, "autoCommit": true, "roundtrips": 1, "sequential": false, "confidential": false, "autoCommitTriggerLast": true } } } } }, "required": [ "scenarioId", "name", "teamId", "folderId", "blueprint" ] }, "ExportScenariosBodyDto": { "type": "object", "properties": { "scenarioIds": { "description": "One or more scenario IDs to export. Maximum 100 IDs per request.", "example": [ 1, 2, 3 ], "type": "array", "items": { "type": "number" } } }, "required": [ "scenarioIds" ] }, "ScenarioDependentDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Scenario ID", "example": 123 }, "name": { "type": "string", "description": "Scenario name", "example": "Sync Firefly assets" }, "dependents": { "description": "This item's own dependents, nested one level deeper. Only present for kinds whose dependents are hierarchical rather than flat (currently `scenario`, via chain-calling); omitted entirely for flat kinds.", "type": "array", "items": { "$ref": "#/components/schemas/ScenarioDependentDto" } } }, "required": [ "id", "name" ] }, "ScenarioPublicBlueprintDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Unique scenario identifier within the organization context.", "example": 123 }, "name": { "type": "string", "description": "Display name of the scenario.", "example": "Daily data sync" }, "teamId": { "type": "number", "description": "ID of the team that owns this scenario (maps to the team/company in Fusion).", "example": 88 }, "description": { "type": "string", "description": "Optional longer description shown in the UI.", "example": "Generate an image." }, "folderId": { "type": "number", "description": "Folder ID for organizing scenarios; omit if the scenario is not in a folder.", "example": 10 }, "usedPackages": { "description": "Identifiers of app packages or modules referenced by the scenario (for example integrations).", "example": [ "adobe-firefly" ], "type": "array", "items": { "type": "string" } }, "isInvalid": { "type": "boolean", "description": "True when the scenario is considered invalid (for example disabled after repeated errors).", "example": false }, "isActive": { "type": "boolean", "description": "Whether the scenario is linked and eligible to run.", "example": false }, "isLocked": { "type": "boolean", "description": "True while the scenario cannot be executed (for example still being configured).", "example": false }, "isPaused": { "type": "boolean", "description": "True when execution is paused after errors until the scenario is resumed.", "example": false }, "sequential": { "type": "boolean", "description": "Whether modules in the scenario run strictly in order (sequential execution).", "example": true }, "lastEdit": { "type": "string", "description": "ISO 8601 timestamp of the last modification to the scenario.", "example": "2026-03-05T15:20:00.000Z", "format": "date-time" }, "scheduling": { "type": "object", "description": "Schedule definition when the scenario is triggered on a timer (shape depends on scheduler settings).", "example": { "time": "07:53", "type": "daily" } }, "hookId": { "type": "number", "description": "Webhook device ID if the scenario is driven by an incoming hook; omit if not hook-based.", "example": 555 }, "deleted": { "type": "boolean", "description": "True when the scenario has been soft-deleted (moved to the recycle bin). Defaults to false in the response when the row is active. Clients can filter on `deleted==true` to list bin contents." }, "deletedBy": { "type": "number", "description": "ID of the user who moved this scenario to the recycle bin. Null for active scenarios and for deleted scenarios predating the audit column or created by system-driven deletes.", "nullable": true }, "blueprint": { "type": "object", "description": "Full automation blueprint: modules, flow, parameters, and metadata. Structure depends on the apps and modules in use.", "example": { "flow": [ { "id": 1, "mapper": { "n": "1", "style": { "imageReference": {} }, "locale": "en-US", "prompt": "ocean and pineapple cocktail", "extension": "default", "structure": { "imageReference": {} } }, "module": "adobe-firefly:generateAnImage2", "version": 1, "metadata": { "expect": [ { "name": "prompt", "type": "text", "label": "Prompt", "required": true }, { "name": "modelVersion", "type": "select", "label": "Model version", "validate": { "enum": [ "image3", "image3_custom", "image4_standard", "image4_ultra", "image4_custom" ] } }, { "name": "n", "type": "number", "label": "Number of variations" }, { "name": "extension", "type": "select", "label": "Generated image format", "required": true, "validate": { "enum": [ "jpeg", "png", "webp", "default" ] } }, { "name": "negativePrompt", "type": "text", "label": "Negative prompt" }, { "name": "contentClass", "type": "select", "label": "Content class", "validate": { "enum": [ "photo", "art" ] } }, { "name": "seeds", "type": "array", "label": "Seeds" }, { "name": "size", "type": "select", "label": "Size", "validate": { "enum": [ "2048,2048", "1024,1024", "2304,1792", "1792,2304", "2688,1536", "1344,768", "1152,896", "896,1152" ] } }, { "name": "visualIntensity", "type": "number", "label": "Visual intensity" }, { "name": "locale", "type": "text", "label": "Locale" }, { "name": "tileable", "type": "boolean", "label": "Tileable" }, { "name": "structure", "spec": [ { "name": "imageReference", "spec": [ { "name": "source", "type": "select", "label": "Source", "validate": { "enum": [ "file", "presignedUrl" ] } }, { "name": "strength", "type": "number", "label": "Strength" } ], "type": "collection", "label": "Image reference" } ], "type": "collection", "label": "Structure" }, { "name": "style", "spec": [ { "name": "imageReference", "spec": [ { "name": "source", "type": "select", "label": "Source", "validate": { "enum": [ "file", "presignedUrl" ] } }, { "name": "strength", "type": "number", "label": "Strength" }, { "name": "presets", "type": "array", "label": "Presets" } ], "type": "collection", "label": "Image reference" } ], "type": "collection", "label": "Style" } ], "restore": { "size": { "mode": "chose", "label": "" }, "seeds": { "mode": "chose", "items": [] }, "style": { "nested": { "imageReference": { "nested": { "source": { "mode": "chose", "label": "" }, "presets": { "mode": "chose", "items": [] } } } } }, "tileable": { "mode": "chose" }, "extension": { "mode": "chose", "label": "Default" }, "structure": { "nested": { "imageReference": { "nested": { "source": { "mode": "chose", "label": "" } } } } }, "connection": { "label": "My Adobe Firefly Connection connection" }, "contentClass": { "mode": "chose", "label": "" }, "modelVersion": { "mode": "chose", "label": "" } }, "designer": { "x": 0, "y": 0 }, "parameters": [ { "name": "connection", "type": "account", "label": "Connection", "required": true } ] }, "parameters": { "connection": 23252 } } ], "name": "Integration Adobe Firefly", "metadata": { "instant": false, "version": 1, "designer": { "orphans": [] }, "scenario": { "dlq": false, "dataloss": false, "maxErrors": 3, "autoCommit": true, "roundtrips": 1, "sequential": false, "confidential": false, "autoCommitTriggerLast": true } } } } }, "required": [ "id", "name", "teamId", "isInvalid", "isActive", "isLocked", "isPaused", "sequential", "blueprint" ] }, "PageMetadataDto": { "type": "object", "properties": { "orderby": { "type": "string", "description": "Sort order expression", "example": "+id" }, "start": { "type": "string", "description": "Cursor value of the first item in the current page", "example": "123" }, "next": { "type": "string", "description": "Cursor value for retrieving the next page", "example": "124" }, "property": { "description": "Applied `property` filter expression(s) from the request", "example": [ "teamId==304" ], "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ] }, "type": { "type": "string", "description": "Resource type filter" }, "count": { "type": "number", "description": "Number of items in the current page", "example": 100 } }, "required": [ "count" ] }, "PageLinksDto": { "type": "object", "properties": { "next": { "type": "string", "description": "URL to the next page of results", "example": "/v3/{{resource}}?orderby=+id&start=123&property=teamId==304" }, "page": { "type": "string", "description": "URI template for pagination", "example": "/v3/{{resource}}{?orderby,start,limit,property,type}" } }, "required": [ "page" ] }, "ScenarioBaseDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Unique scenario identifier within the organization context.", "example": 123 }, "name": { "type": "string", "description": "Display name of the scenario.", "example": "Daily data sync" }, "teamId": { "type": "number", "description": "ID of the team that owns this scenario (maps to the team/company in Fusion).", "example": 88 }, "description": { "type": "string", "description": "Optional longer description shown in the UI.", "example": "Generate an image." }, "folderId": { "type": "number", "description": "Folder ID for organizing scenarios; omit if the scenario is not in a folder.", "example": 10 }, "usedPackages": { "description": "Identifiers of app packages or modules referenced by the scenario (for example integrations).", "example": [ "adobe-firefly" ], "type": "array", "items": { "type": "string" } }, "isInvalid": { "type": "boolean", "description": "True when the scenario is considered invalid (for example disabled after repeated errors).", "example": false }, "isActive": { "type": "boolean", "description": "Whether the scenario is linked and eligible to run.", "example": false }, "isLocked": { "type": "boolean", "description": "True while the scenario cannot be executed (for example still being configured).", "example": false }, "isPaused": { "type": "boolean", "description": "True when execution is paused after errors until the scenario is resumed.", "example": false }, "sequential": { "type": "boolean", "description": "Whether modules in the scenario run strictly in order (sequential execution).", "example": true }, "lastEdit": { "type": "string", "description": "ISO 8601 timestamp of the last modification to the scenario.", "example": "2026-03-05T15:20:00.000Z", "format": "date-time" }, "scheduling": { "type": "object", "description": "Schedule definition when the scenario is triggered on a timer (shape depends on scheduler settings).", "example": { "time": "07:53", "type": "daily" } }, "hookId": { "type": "number", "description": "Webhook device ID if the scenario is driven by an incoming hook; omit if not hook-based.", "example": 555 }, "deleted": { "type": "boolean", "description": "True when the scenario has been soft-deleted (moved to the recycle bin). Defaults to false in the response when the row is active. Clients can filter on `deleted==true` to list bin contents." }, "deletedBy": { "type": "number", "description": "ID of the user who moved this scenario to the recycle bin. Null for active scenarios and for deleted scenarios predating the audit column or created by system-driven deletes.", "nullable": true } }, "required": [ "id", "name", "teamId", "isInvalid", "isActive", "isLocked", "isPaused", "sequential" ] }, "GetScenariosListResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "description": "Array of scenarios", "type": "array", "items": { "$ref": "#/components/schemas/ScenarioBaseDto" } } }, "required": [ "_page", "_links", "items" ] }, "ScenarioDependencyItemDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Dependency ID", "example": 1 }, "name": { "type": "string", "description": "Dependency name", "example": "Firefly connection" }, "kind": { "type": "string", "description": "Type of dependency", "enum": [ "hook", "dataStore", "dataStructure", "connection", "key", "scenario" ], "example": "connection" }, "type": { "type": "string", "description": "Optional subtype for hook, connection, and key", "example": "workfront-workfront" } }, "required": [ "id", "name", "kind" ] }, "ScenarioDependenciesResponseDto": { "type": "object", "properties": { "items": { "description": "List of scenario dependencies (connections, keys, data stores, hooks, and data structures)", "type": "array", "items": { "$ref": "#/components/schemas/ScenarioDependencyItemDto" } } }, "required": [ "items" ] }, "ReplacementDto": { "type": "object", "properties": { "kind": { "type": "string", "description": "Type of dependency to replace", "enum": [ "hook", "dataStore", "dataStructure", "connection", "key", "scenario" ] }, "sourceId": { "type": "number", "description": "Source dependency id (in the original scenario)", "example": 100 }, "targetId": { "type": "number", "description": "Target dependency id (replacement in the clone)", "example": 200 } }, "required": [ "kind", "sourceId", "targetId" ] }, "CloneScenarioRequestDto": { "type": "object", "properties": { "teamId": { "type": "number", "description": "Team ID where the cloned scenario will be created. If omitted, the clone is created in the source scenario team.", "example": 88 }, "folderId": { "type": "number", "description": "Folder ID where the cloned scenario will be created", "example": 88 }, "name": { "type": "string", "description": "Name for the cloned scenario", "example": "My copied scenario", "maxLength": 255 }, "replacements": { "description": "Maps source dependencies to target resources in the new team", "type": "array", "items": { "$ref": "#/components/schemas/ReplacementDto" } }, "continueFromLastProcessed": { "type": "boolean", "description": "When true, the clone continues right after the last record the original processed. When false (default), the clone starts fresh and processes all records from the beginning.", "example": false, "default": false } }, "required": [ "replacements" ] }, "CloneScenarioResponseDto": { "type": "object", "properties": { "id": { "type": "number", "description": "ID of the newly created (cloned) scenario", "example": 456 } }, "required": [ "id" ] }, "ScenarioVersionBaseDto": { "type": "object", "properties": { "version": { "type": "number", "description": "Version number.", "example": 3 }, "scenarioId": { "type": "number", "description": "ID of the scenario this version belongs to.", "example": 123 }, "createdAt": { "type": "string", "description": "ISO 8601 timestamp when this version was created.", "example": "2026-03-05T15:20:00.000Z", "format": "date-time" }, "comment": { "type": "string", "description": "Optional comment describing this version.", "example": "Fixed connection timeout issue." } }, "required": [ "version", "scenarioId", "createdAt" ] }, "GetScenarioVersionsListResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "description": "Array of scenario versions", "type": "array", "items": { "$ref": "#/components/schemas/ScenarioVersionBaseDto" } } }, "required": [ "_page", "_links", "items" ] }, "ScenarioVersionBlueprintDto": { "type": "object", "properties": { "version": { "type": "number", "description": "Version number.", "example": 3 }, "scenarioId": { "type": "number", "description": "ID of the scenario this version belongs to.", "example": 123 }, "createdAt": { "type": "string", "description": "ISO 8601 timestamp when this version was created.", "example": "2026-03-05T15:20:00.000Z", "format": "date-time" }, "comment": { "type": "string", "description": "Optional comment describing this version.", "example": "Fixed connection timeout issue." }, "blueprint": { "type": "object", "description": "Full automation blueprint for this scenario version.", "example": { "flow": [ { "id": 1, "mapper": { "n": "1", "style": { "imageReference": {} }, "locale": "en-US", "prompt": "ocean and pineapple cocktail", "extension": "default", "structure": { "imageReference": {} } }, "module": "adobe-firefly:generateAnImage2", "version": 1, "metadata": { "expect": [ { "name": "prompt", "type": "text", "label": "Prompt", "required": true }, { "name": "modelVersion", "type": "select", "label": "Model version", "validate": { "enum": [ "image3", "image3_custom", "image4_standard", "image4_ultra", "image4_custom" ] } }, { "name": "n", "type": "number", "label": "Number of variations" }, { "name": "extension", "type": "select", "label": "Generated image format", "required": true, "validate": { "enum": [ "jpeg", "png", "webp", "default" ] } }, { "name": "negativePrompt", "type": "text", "label": "Negative prompt" }, { "name": "contentClass", "type": "select", "label": "Content class", "validate": { "enum": [ "photo", "art" ] } }, { "name": "seeds", "type": "array", "label": "Seeds" }, { "name": "size", "type": "select", "label": "Size", "validate": { "enum": [ "2048,2048", "1024,1024", "2304,1792", "1792,2304", "2688,1536", "1344,768", "1152,896", "896,1152" ] } }, { "name": "visualIntensity", "type": "number", "label": "Visual intensity" }, { "name": "locale", "type": "text", "label": "Locale" }, { "name": "tileable", "type": "boolean", "label": "Tileable" }, { "name": "structure", "spec": [ { "name": "imageReference", "spec": [ { "name": "source", "type": "select", "label": "Source", "validate": { "enum": [ "file", "presignedUrl" ] } }, { "name": "strength", "type": "number", "label": "Strength" } ], "type": "collection", "label": "Image reference" } ], "type": "collection", "label": "Structure" }, { "name": "style", "spec": [ { "name": "imageReference", "spec": [ { "name": "source", "type": "select", "label": "Source", "validate": { "enum": [ "file", "presignedUrl" ] } }, { "name": "strength", "type": "number", "label": "Strength" }, { "name": "presets", "type": "array", "label": "Presets" } ], "type": "collection", "label": "Image reference" } ], "type": "collection", "label": "Style" } ], "restore": { "size": { "mode": "chose", "label": "" }, "seeds": { "mode": "chose", "items": [] }, "style": { "nested": { "imageReference": { "nested": { "source": { "mode": "chose", "label": "" }, "presets": { "mode": "chose", "items": [] } } } } }, "tileable": { "mode": "chose" }, "extension": { "mode": "chose", "label": "Default" }, "structure": { "nested": { "imageReference": { "nested": { "source": { "mode": "chose", "label": "" } } } } }, "connection": { "label": "My Adobe Firefly Connection connection" }, "contentClass": { "mode": "chose", "label": "" }, "modelVersion": { "mode": "chose", "label": "" } }, "designer": { "x": 0, "y": 0 }, "parameters": [ { "name": "connection", "type": "account", "label": "Connection", "required": true } ] }, "parameters": { "connection": 23252 } } ], "name": "Integration Adobe Firefly", "metadata": { "instant": false, "version": 1, "designer": { "orphans": [] }, "scenario": { "dlq": false, "dataloss": false, "maxErrors": 3, "autoCommit": true, "roundtrips": 1, "sequential": false, "confidential": false, "autoCommitTriggerLast": true } } } } }, "required": [ "version", "scenarioId", "createdAt", "blueprint" ] }, "FolderDto": { "type": "object", "properties": { "id": { "type": "number", "example": 501 }, "name": { "type": "string", "example": "Marketing automations" }, "teamId": { "type": "number", "description": "ID of the team that owns this folder.", "example": 88 }, "scenariosTotal": { "type": "number", "description": "Number of scenarios in the folder", "example": 0 } }, "required": [ "id", "name", "teamId", "scenariosTotal" ] }, "FoldersSearchResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/FolderDto" } } }, "required": [ "_page", "_links", "items" ] }, "CreateFolderRequestDto": { "type": "object", "properties": { "teamId": { "type": "number", "description": "Team that will own the folder", "example": 88 }, "name": { "type": "string", "description": "Display name of the folder", "example": "Marketing automations" } }, "required": [ "teamId", "name" ] }, "CreateFolderResponseDto": { "type": "object", "properties": { "id": { "type": "number", "description": "ID of the created folder", "example": 501 } }, "required": [ "id" ] }, "UpdateFolderRequestDto": { "type": "object", "properties": { "name": { "type": "string", "description": "New display name for the folder", "example": "Marketing automations" } }, "required": [ "name" ] }, "ActivityLog": { "type": "object", "properties": { "timestamp": { "type": "string", "description": "Timestamp when the activity occurred (UTC)", "example": "2025-12-09T11:39:34.834Z", "format": "date-time" }, "messageId": { "type": "string", "description": "Unique message identifier", "example": "5833b3d8-1215-4dc0-aa51-423a1993f7d1" }, "userId": { "type": "number", "description": "User ID who triggered the activity", "example": 2555 }, "userName": { "type": "string", "description": "User display name", "example": "John Snow" }, "teamId": { "type": "number", "description": "Team ID associated with the activity", "example": 34 }, "teamName": { "type": "string", "description": "Team name", "example": "My Team" }, "orgId": { "type": "number", "description": "Organization ID", "example": 2245 }, "entity": { "type": "string", "description": "Entity type that was affected", "enum": [ "team", "scenario", "webhook", "connection", "data structure", "data store", "organization", "folder", "user", "key", "keys" ], "example": "scenario" }, "entityId": { "type": "number", "description": "Entity ID related to the activity", "example": 38641 }, "action": { "type": "string", "description": "Action performed on the entity", "enum": [ "created", "deleted", "renamed", "disabled", "enabled", "deactivated", "reauthorized", "activated", "updated", "moved", "cloned", "invited", "transferred ownership", "changed organization role", "changed team role", "restored" ], "example": "updated" }, "message": { "type": "string", "description": "Human-readable activity message", "example": "John Snow updated \"Update Project tasks (Data Store Project)\" scenario" } }, "required": [ "timestamp", "messageId", "userId", "userName", "teamName", "orgId", "entity", "action", "message" ] }, "ActivityLogsResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "description": "Array of activity logs", "type": "array", "items": { "$ref": "#/components/schemas/ActivityLog" } } }, "required": [ "_page", "_links", "items" ] }, "ScenarioItemDto": { "type": "object", "properties": { "id": { "type": "number", "example": 12345, "description": "Scenario ID" }, "operations": { "type": "number", "example": 100, "description": "Number of operations for this scenario" } }, "required": [ "id", "operations" ] }, "TeamItemDto": { "type": "object", "properties": { "id": { "type": "number", "example": 67890, "description": "Team ID" }, "operations": { "type": "number", "example": 200, "description": "Number of operations for this team" } }, "required": [ "id", "operations" ] }, "PackageItemDto": { "type": "object", "properties": { "name": { "type": "string", "example": "package-name", "description": "Package name" }, "operations": { "type": "number", "example": 50, "description": "Number of operations for this package" } }, "required": [ "name", "operations" ] }, "ModuleItemDto": { "type": "object", "properties": { "name": { "type": "string", "example": "module-name", "description": "Module name" }, "operations": { "type": "number", "example": 75, "description": "Number of operations for this module" } }, "required": [ "name", "operations" ] }, "OperationsV3ItemDto": { "type": "object", "properties": { "timestamp": { "type": "string", "example": "2025-01-15", "description": "Timestamp for this data point" }, "scenarios": { "description": "Operations grouped by scenario (present when grouped by scenario)", "type": "array", "items": { "$ref": "#/components/schemas/ScenarioItemDto" } }, "teams": { "description": "Operations grouped by team (present when grouped by team)", "type": "array", "items": { "$ref": "#/components/schemas/TeamItemDto" } }, "packages": { "description": "Operations grouped by package (present when grouped by package)", "type": "array", "items": { "$ref": "#/components/schemas/PackageItemDto" } }, "modules": { "description": "Operations grouped by module (present when grouped by module)", "type": "array", "items": { "$ref": "#/components/schemas/ModuleItemDto" } }, "operations": { "type": "number", "example": 500, "description": "Total operations count (present when no grouping is applied)" } }, "required": [ "timestamp" ] }, "OperationsResponseV3Dto": { "type": "object", "properties": { "items": { "description": "Array of operation count data points, sorted by timestamp (see orderby when provided)", "type": "array", "items": { "$ref": "#/components/schemas/OperationsV3ItemDto" } }, "timeUnit": { "type": "string", "enum": [ "day", "month" ], "example": "day", "description": "Time unit used for grouping the results" }, "orderby": { "type": "string", "example": "-timestamp", "description": "Present when orderby was provided in the request; reflects how items are sorted by timestamp" } }, "required": [ "items", "timeUnit" ] }, "OperationsV3SummaryItemDto": { "type": "object", "properties": { "scenarioId": { "type": "number", "example": 12345, "description": "Scenario ID" }, "teamId": { "type": "number", "example": 67890, "description": "Team ID" }, "operations": { "type": "number", "example": 150, "description": "Number of operations for this scenario and team combination" } }, "required": [ "scenarioId", "teamId", "operations" ] }, "OperationsV3SummaryResponseDto": { "type": "object", "properties": { "items": { "description": "Array of operation summaries by scenario and team", "type": "array", "items": { "$ref": "#/components/schemas/OperationsV3SummaryItemDto" } }, "totalOperations": { "type": "number", "example": 1500, "description": "Total sum of all operations across all scenarios and teams" }, "orderby": { "type": "string", "example": "-operations", "description": "Present when orderby was provided in the request; reflects how items are sorted" } }, "required": [ "items", "totalOperations" ] }, "ConnectionsV3ListItemDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Unique connection ID.", "example": 10752 }, "name": { "type": "string", "description": "User-facing connection name.", "example": "My Workfront connection" }, "accountName": { "type": "string", "description": "Connector type identifier. Prefixed with `app#` for SDK-based connectors.", "example": "adobe-workfront-oauth2" }, "accountLabel": { "type": "string", "description": "Human-readable connector label in the requested language.", "example": "Adobe Workfront auth" }, "accountType": { "type": "string", "description": "Auth mechanism of the connector (e.g. `oauth`, `basic`).", "example": "oauth" }, "expire": { "format": "date-time", "type": "string", "description": "OAuth token expiry timestamp. `null` for non-OAuth auth types.", "example": null, "nullable": true }, "metadata": { "type": "object", "description": "Arbitrary connection metadata stored at authorisation time.", "example": { "type": "text", "value": "John | my.workfront.com" }, "nullable": true }, "teamId": { "type": "number", "description": "ID of the team that owns this connection.", "example": 16496 }, "theme": { "type": "string", "description": "Hex colour used to render the connector icon.", "example": "#db492b" }, "scopesCount": { "type": "number", "description": "Number of OAuth scopes granted to this connection.", "example": 3 }, "scoped": { "type": "boolean", "description": "Whether the connection covers the requested OAuth scope set. Always `true` when no scope filter is applied.", "example": true }, "editable": { "type": "boolean", "description": "Whether the connector definition allows editing credentials.", "example": false }, "uid": { "type": "string", "description": "Third-party user identifier captured at OAuth authorisation (e.g. Google account ID). `null` for non-OAuth connections.", "example": null, "nullable": true }, "environmentType": { "type": "string", "description": "Deployment environment of the connected account (e.g. `production`, `nonproduction`).", "example": "nonproduction", "nullable": true }, "authenticationType": { "type": "string", "description": "Authentication sub-type (e.g. `personalaccount`, `serviceaccount`).", "example": "personalaccount", "nullable": true }, "createdAt": { "format": "date-time", "type": "string", "description": "Timestamp when the connection was first created.", "example": "2024-03-15T10:22:00.000Z" } }, "required": [ "id", "name", "accountName", "accountLabel", "teamId", "theme", "scopesCount", "scoped", "editable", "createdAt" ] }, "GetConnectionsListResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "description": "Array of connection objects", "type": "array", "items": { "$ref": "#/components/schemas/ConnectionsV3ListItemDto" } } }, "required": [ "_page", "_links", "items" ] }, "TeamAccountScopesDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Scope ID", "example": "offline_access" }, "name": { "type": "string", "description": "Display name from the scope", "example": "The app can access the data user has given permission to, even when user is not using the app\"", "nullable": true }, "account": { "type": "string", "description": "Account name for the connection", "example": "workfront-workfront" } }, "required": [ "id" ] }, "ConnectionDetailsV3Response": { "type": "object", "properties": { "id": { "type": "number", "description": "Unique connection ID.", "example": 10752 }, "name": { "type": "string", "description": "User-facing connection name.", "example": "My Workfront connection" }, "accountName": { "type": "string", "description": "Connector type identifier. Prefixed with `app#` for SDK-based connectors.", "example": "adobe-workfront-oauth2" }, "accountLabel": { "type": "string", "description": "Human-readable connector label in the requested language.", "example": "Adobe Workfront auth" }, "accountType": { "type": "string", "description": "Auth mechanism of the connector (e.g. `oauth`, `basic`).", "example": "oauth" }, "expire": { "format": "date-time", "type": "string", "description": "OAuth token expiry timestamp. `null` for non-OAuth auth types.", "example": null, "nullable": true }, "metadata": { "type": "object", "description": "Arbitrary connection metadata stored at authorisation time.", "example": { "type": "text", "value": "John | my.workfront.com" }, "nullable": true }, "teamId": { "type": "number", "description": "ID of the team that owns this connection.", "example": 16496 }, "theme": { "type": "string", "description": "Hex colour used to render the connector icon.", "example": "#db492b" }, "scopesCount": { "type": "number", "description": "Number of OAuth scopes granted to this connection.", "example": 3 }, "scoped": { "type": "boolean", "description": "Whether the connection covers the requested OAuth scope set. Always `true` when no scope filter is applied.", "example": true }, "editable": { "type": "boolean", "description": "Whether the connector definition allows editing credentials.", "example": false }, "uid": { "type": "string", "description": "Third-party user identifier captured at OAuth authorisation (e.g. Google account ID). `null` for non-OAuth connections.", "example": null, "nullable": true }, "environmentType": { "type": "string", "description": "Deployment environment of the connected account (e.g. `production`, `nonproduction`).", "example": "nonproduction", "nullable": true }, "authenticationType": { "type": "string", "description": "Authentication sub-type (e.g. `personalaccount`, `serviceaccount`).", "example": "personalaccount", "nullable": true }, "createdAt": { "format": "date-time", "type": "string", "description": "Timestamp when the connection was first created.", "example": "2024-03-15T10:22:00.000Z" }, "type": { "type": "string", "description": "Connector type identifier (same value as `accountName`, without the `app#` prefix).", "example": "adobe-workfront-promise" }, "valid": { "type": "boolean", "description": "Whether the connection credentials are still valid (token not expired, not revoked).", "example": true }, "defaultScopes": { "description": "Default scope set defined by the connector, normalised to an array.", "example": [ "read:user" ], "type": "array", "items": { "type": "string" } }, "scopes": { "description": "Granted scopes for this connection: `id` matches the stored scope identifier; `name` comes from the connector manifest when defined.", "type": "array", "items": { "$ref": "#/components/schemas/TeamAccountScopesDto" } } }, "required": [ "id", "name", "accountName", "accountLabel", "teamId", "theme", "scopesCount", "scoped", "editable", "createdAt", "type", "valid", "defaultScopes", "scopes" ] }, "ConnectionScenarioV3Dto": { "type": "object", "properties": { "id": { "type": "number", "description": "Unique scenario ID.", "example": 123 } }, "required": [ "id" ] }, "ConnectionScenariosV3Response": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "description": "Array of scenario objects linked to the connection", "type": "array", "items": { "$ref": "#/components/schemas/ConnectionScenarioV3Dto" } } }, "required": [ "_page", "_links", "items" ] }, "KeyTypeName": { "type": "string", "enum": [ "aes-key", "apikeyauth", "apn", "basicauth", "basickeyauth", "clientcertauth", "eet", "fcm" ], "description": "Key type identifier" }, "KeyV3ResponseDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Key ID", "example": 1 }, "name": { "type": "string", "description": "Key name", "example": "My Google Key" }, "typeName": { "description": "Key type identifier", "example": "aes-key", "allOf": [ { "$ref": "#/components/schemas/KeyTypeName" } ] }, "teamId": { "type": "number", "description": "Team that owns the key", "example": 12345 }, "theme": { "type": "string", "description": "UI theme", "example": "default" } }, "required": [ "id", "name", "typeName", "teamId" ] }, "KeysListV3ResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "description": "Array of key objects", "type": "array", "items": { "$ref": "#/components/schemas/KeyV3ResponseDto" } } }, "required": [ "_page", "_links", "items" ] }, "HookDependentDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Hook ID", "example": 123 }, "name": { "type": "string", "description": "Hook name", "example": "My Workfront hook" } }, "required": [ "id", "name" ] }, "HookReplacementV3Dto": { "type": "object", "properties": { "kind": { "type": "string", "description": "Which reference on the cloned hook to re-point.", "enum": [ "dataStructure", "connection", "key" ], "example": "connection" }, "targetId": { "type": "number", "description": "Id of the target resource to point the clone at (a connection id for `connection`, a data structure id for `dataStructure`, a key id for `key`). The caller's permission on this target -- and that it belongs to the clone's team -- is checked before the clone is created.", "example": "456" } }, "required": [ "kind", "targetId" ] }, "CloneHookV3Dto": { "type": "object", "properties": { "name": { "type": "string", "description": "Name for the cloned hook. Defaults to `\"{source name} (clone)\"` when omitted.", "example": "My Hook (clone)" }, "teamId": { "type": "number", "description": "Target team for the clone. Defaults to the source hook's team when omitted; the caller must have permission to add hooks to the resolved team.", "example": 12685 }, "replacements": { "description": "Reference replacements to apply to the clone. Only the reference kinds the source hook type actually uses are accepted.", "type": "array", "items": { "$ref": "#/components/schemas/HookReplacementV3Dto" } } } }, "HookV3Dto": { "type": "object", "properties": { "id": { "type": "number", "description": "Unique numeric identifier for the hook.", "example": 15473 }, "name": { "type": "string", "description": "Display name of the hook, assigned when the hook is created.", "example": "My custom-webhook webhook" }, "teamId": { "type": "number", "description": "ID of the team this hook belongs to.", "example": 12685 }, "udid": { "type": "string", "description": "Globally unique string identifier for the hook. This value forms the last path segment of the hook URL.", "example": "e902fmo3ho9f3w10uyx61qh80ncjdr20" }, "theme": { "type": "string", "description": "Hex color code used to visually identify the hook in the Fusion scenario builder.", "example": "#C73A63" }, "editable": { "type": "boolean", "description": "Indicates whether the hook configuration can be edited.", "example": false }, "queueCount": { "type": "number", "description": "Number of incoming events currently queued for processing.", "example": 0 }, "queueLimit": { "type": "number", "description": "Maximum number of events the queue can hold before new incoming events are rejected.", "example": 100000 }, "enabled": { "type": "boolean", "description": "Indicates whether the hook is active and accepting incoming events.", "example": true }, "gone": { "type": "boolean", "description": "When true, the hook returns a 410 Gone response. This happens when the hook is no longer attached to an active scenario.", "example": false }, "learning": { "type": "boolean", "description": "Indicates whether the hook is currently in learning mode, where it captures payloads to infer its data structure.", "example": false }, "typeName": { "type": "string", "description": "Type name that identifies the hook's integration, e.g. 'custom-webhook', 'adobe-workfront' / 'adobe-workfront-legacy', or 'workfront-planning' / 'workfront-planning-legacy'.", "example": "custom-webhook" }, "data": { "type": "object", "description": "Hook-specific configuration object. For Workfront hooks, this contains event subscription data. The shape varies by hook type.", "example": {} }, "scenarioId": { "type": "number", "description": "ID of the scenario this hook is bound to. Returns null when the hook is not bound to a scenario.", "example": 33723 }, "url": { "type": "string", "description": "The public URL that external systems use to send events to this hook. The last path segment is the hook UDID.", "example": "https://hook.app.workfrontfusion.com/e902fmo3ho9f3w10uyx61qh80ncjdr20" }, "priority": { "type": "string", "description": "Processing priority for the hook. Determines relative execution order when multiple hooks are queued. Possible values: Low, Medium, High.", "example": "Low", "enum": [ "Low", "Medium", "High" ] }, "detached": { "type": "boolean", "description": "Indicates whether the hook has been detached, meaning it no longer has an active subscription in the external system.", "example": false }, "connectionId": { "type": "number", "description": "ID of the connection associated with this hook. Present when the hook was created using a connection.", "example": 789, "nullable": true }, "automation": { "type": "object", "description": "Owner binding for this hook, projected from users.company_device.automation. Agent shape: {type:'agent', id, triggerId, versionId}. Scenario shape: {type:'scenario', id}. Null when the hook is not bound. The wire shape never includes the legacy automation.agentId — consumers always read automation.id.", "nullable": true } }, "required": [ "id", "name", "teamId", "udid", "theme", "editable", "queueCount", "queueLimit", "enabled", "gone", "learning", "typeName", "data", "priority", "detached" ] }, "HookDependencyItemDto": { "type": "object", "properties": { "kind": { "type": "string", "description": "Which kind of resource this dependency is.", "enum": [ "connection", "dataStructure", "key" ], "example": "connection" }, "id": { "type": "number", "description": "Dependency ID.", "example": 456 }, "name": { "type": "string", "description": "Dependency name.", "example": "My Workfront connection" }, "type": { "type": "string", "description": "Subtype of the dependency. Set for connection (public connector name, as returned by account-manager) and key (key type); omitted for a data structure.", "example": "adobe-workfront-promise" } }, "required": [ "kind", "id", "name" ] }, "HookDependenciesResponseDto": { "type": "object", "properties": { "items": { "description": "The connections, keys, and data structures referenced by the hook.", "type": "array", "items": { "$ref": "#/components/schemas/HookDependencyItemDto" } } }, "required": [ "items" ] }, "HookV3ListDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Unique numeric identifier for the hook.", "example": 15473 }, "name": { "type": "string", "description": "Display name of the hook, assigned when the hook is created.", "example": "My custom-webhook webhook" }, "teamId": { "type": "number", "description": "ID of the team this hook belongs to.", "example": 12685 }, "udid": { "type": "string", "description": "Globally unique string identifier for the hook. This value forms the last path segment of the hook URL.", "example": "e902fmo3ho9f3w10uyx61qh80ncjdr20" }, "theme": { "type": "string", "description": "Hex color code used to visually identify the hook in the Fusion scenario builder.", "example": "#C73A63" }, "editable": { "type": "boolean", "description": "Indicates whether the hook configuration can be edited.", "example": false }, "queueCount": { "type": "number", "description": "Number of incoming events currently queued for processing.", "example": 0 }, "queueLimit": { "type": "number", "description": "Maximum number of events the queue can hold before new incoming events are rejected.", "example": 100000 }, "enabled": { "type": "boolean", "description": "Indicates whether the hook is active and accepting incoming events.", "example": true }, "gone": { "type": "boolean", "description": "When true, the hook returns a 410 Gone response. This happens when the hook is no longer attached to an active scenario.", "example": false }, "learning": { "type": "boolean", "description": "Indicates whether the hook is currently in learning mode, where it captures payloads to infer its data structure.", "example": false }, "typeName": { "type": "string", "description": "Type name that identifies the hook's integration, e.g. 'custom-webhook', 'adobe-workfront' / 'adobe-workfront-legacy', or 'workfront-planning' / 'workfront-planning-legacy'.", "example": "custom-webhook" }, "data": { "type": "object", "description": "Hook-specific configuration object. For Workfront hooks, this contains event subscription data. The shape varies by hook type.", "example": {} }, "scenarioId": { "type": "number", "description": "ID of the scenario this hook is bound to. Returns null when the hook is not bound to a scenario.", "example": 33723 }, "url": { "type": "string", "description": "The public URL that external systems use to send events to this hook. The last path segment is the hook UDID.", "example": "https://hook.app.workfrontfusion.com/e902fmo3ho9f3w10uyx61qh80ncjdr20" }, "priority": { "type": "string", "description": "Processing priority for the hook. Determines relative execution order when multiple hooks are queued. Possible values: Low, Medium, High.", "example": "Low", "enum": [ "Low", "Medium", "High" ] }, "detached": { "type": "boolean", "description": "Indicates whether the hook has been detached, meaning it no longer has an active subscription in the external system.", "example": false }, "connectionId": { "type": "number", "description": "ID of the connection associated with this hook. Present when the hook was created using a connection.", "example": 789, "nullable": true }, "automation": { "type": "object", "description": "Owner binding for this hook, projected from users.company_device.automation. Agent shape: {type:'agent', id, triggerId, versionId}. Scenario shape: {type:'scenario', id}. Null when the hook is not bound. The wire shape never includes the legacy automation.agentId — consumers always read automation.id.", "nullable": true } }, "required": [ "id", "name", "teamId", "udid", "theme", "editable", "queueCount", "queueLimit", "enabled", "gone", "learning", "typeName", "data", "priority", "detached" ] }, "GetHooksListResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "description": "Array of hooks matching the search criteria.", "type": "array", "items": { "$ref": "#/components/schemas/HookV3ListDto" } } }, "required": [ "_page", "_links", "items" ] }, "QueueV3Dto": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier (UUID) for the queued webhook event.", "example": "81dcaa4c3d284f6bb1ef472b01c6ee3e" }, "size": { "type": "number", "description": "Size of the queued webhook event payload in bytes.", "example": 1024 }, "createdAt": { "type": "string", "description": "Timestamp when the webhook event was received into the queue.", "example": "2026-07-27T14:46:45.686Z", "format": "date-time" }, "processing": { "type": "boolean", "description": "Processing state of the queued webhook event. `null` while queued, `true` once a worker has claimed it for processing.", "example": false, "nullable": true }, "processingStartedAt": { "type": "string", "description": "Timestamp when processing started. `null` while the event is still queued.", "example": "2026-07-27T14:47:00.000Z", "format": "date-time", "nullable": true } }, "required": [ "id", "size", "createdAt" ] }, "GetQueueListResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "description": "Array of queued webhook events matching the search criteria.", "type": "array", "items": { "$ref": "#/components/schemas/QueueV3Dto" } } }, "required": [ "_page", "_links", "items" ] }, "QueueStatsV3Dto": { "type": "object", "properties": { "queue": { "type": "number", "description": "Number of webhook events currently queued for processing.", "example": 0 }, "limit": { "type": "number", "description": "Maximum number of events the queue can hold before new events are rejected.", "example": 100000 }, "enabled": { "type": "boolean", "description": "Indicates whether the hook is active and accepting new events.", "example": true } }, "required": [ "queue", "limit", "enabled" ] }, "QueueDetailV3Dto": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier (UUID) for the queued webhook event.", "example": "aa860f530c334e8e8455da888c8d0970" }, "size": { "type": "number", "description": "Size of the queued webhook event payload in bytes.", "example": 1024 }, "createdAt": { "type": "string", "description": "Timestamp when the webhook event was received into the queue.", "example": "2026-07-27T14:46:45.686Z", "format": "date-time" }, "data": { "type": "object", "description": "Decoded payload of the queued webhook event.", "example": { "event": "task.updated", "taskId": 42 } } }, "required": [ "id", "size", "createdAt", "data" ] }, "DeleteFailureReason": { "type": "string", "enum": [ "not_found", "has_dependents", "processing", "unauthorized" ], "description": "Why the id was not deleted." }, "DeleteFailureDto": { "type": "object", "properties": { "id": { "type": "string", "description": "The id that could not be deleted." }, "reason": { "description": "Why the id was not deleted.", "allOf": [ { "$ref": "#/components/schemas/DeleteFailureReason" } ] } }, "required": [ "id", "reason" ] }, "DeleteQueueV3ResponseDto": { "type": "object", "properties": { "deleted": { "description": "Ids that were deleted.", "type": "array", "items": { "type": "string" } }, "failed": { "description": "Ids that could not be deleted, with a reason.", "type": "array", "items": { "$ref": "#/components/schemas/DeleteFailureDto" } } }, "required": [ "deleted", "failed" ] }, "DeleteQueueV3QueryDto": { "type": "object", "properties": { "all": { "type": "boolean", "description": "Delete all queued webhook events for the hook.", "example": false }, "id": { "description": "ID of the queued webhook event to delete. Repeat for multiple (`?id=a&id=b`). Maximum 50.", "example": [ "cea19821d0ad423d92b853a51ea2321e", "563e8cc79fd84ae08fca37fa05d94150" ], "type": "array", "items": { "type": "string" } }, "except": { "description": "ID of the queued webhook event to exclude when deleting `all`. Repeat for multiple (`?except=a&except=b`). Maximum 50.", "example": [ "cea19821d0ad423d92b853a51ea2321e" ], "type": "array", "items": { "type": "string" } } } }, "DataStoreListItemResponseV3Dto": { "type": "object", "properties": { "id": { "type": "number", "example": 1, "description": "Unique numeric identifier of the data store" }, "name": { "type": "string", "example": "My Store", "description": "Name of the data store" }, "teamId": { "type": "number", "example": 100, "description": "ID of the team that owns this data store. Filterable: pass property=teamId= to scope the list to a single team; omit for an org-wide list." }, "records": { "type": "number", "example": 42, "description": "Count of records stored in the data store" }, "size": { "type": "number", "example": 2097152, "description": "Current storage used by the data store, in bytes (e.g. 2097152 = 2 MiB)" }, "maxSize": { "type": "number", "example": 10485760, "description": "Maximum allowed storage capacity, in bytes (set via create/patch maxSizeMB × 1,048,576; e.g. 10485760 = 10 MiB)" }, "dataStructureId": { "type": "number", "nullable": true, "example": 10, "description": "ID of the linked data structure; null when no structure is assigned" }, "spec": { "type": "array", "items": { "type": "object" }, "description": "Spec field for this data store" }, "strict": { "type": "boolean", "description": "Whether validation is strict" } }, "required": [ "spec", "strict" ] }, "DataStoreListSearchResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "description": "Data stores for the requested team, including usage metrics per item", "type": "array", "items": { "$ref": "#/components/schemas/DataStoreListItemResponseV3Dto" } } }, "required": [ "_page", "_links", "items" ] }, "DataStoreDependentDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Data store ID", "example": 1 }, "name": { "type": "string", "description": "Data store name", "example": "My Store" } }, "required": [ "id", "name" ] }, "DataStoreRecordItemV3Dto": { "type": "object", "properties": { "key": { "type": "string", "description": "Record key", "example": "record-1" }, "data": { "type": "object", "additionalProperties": true, "description": "Record payload" } }, "required": [ "data" ] }, "DataStoreDataListSearchResponseV3Dto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/DataStoreRecordItemV3Dto" } } }, "required": [ "_page", "_links", "items" ] }, "DataStoreDataDeleteResponseDto": { "type": "object", "properties": { "deleted": { "default": [], "description": "Record keys that were deleted.", "example": [ "key-a", "key-b" ], "type": "array", "items": { "type": "string" } }, "failed": { "default": [], "description": "Record keys that could not be deleted, each with a reason. The `id` field holds the record key.", "type": "array", "items": { "$ref": "#/components/schemas/DeleteFailureDto" } } }, "required": [ "deleted", "failed" ] }, "ExecutionDto": { "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier for the execution. A 32-character lowercase string.", "example": "62672b87ce5a449dae743947962da8b7" }, "type": { "type": "string", "description": "How the execution was run. `auto` = scheduled/automatic run, `manual` = user-initiated run-once.", "enum": [ "auto", "manual" ], "example": "auto" }, "kind": { "type": "string", "description": "Type of entity this execution belongs to. `scenario` = automation scenario, `dlq` = incomplete execution.", "enum": [ "scenario", "dlq" ], "example": "scenario" }, "kindId": { "type": "string", "description": "Identifier of the parent entity referenced by `kind` (the scenario or DLQ id). Numeric id represented as a string.", "example": "87" }, "teamId": { "type": "number", "description": "Identifier of the team that owns the parent automation.", "example": 1 }, "organizationId": { "type": "number", "description": "Identifier of the organization that owns the execution.", "example": 1 }, "authorId": { "type": "number", "description": "Identifier of the user who authored/initiated the execution. Absent for fully automated runs with no acting user.", "example": 2555 }, "status": { "type": "number", "description": "Execution result status code: `0` running, `1` success, `2` warning, `3` error.", "enum": [ 0, 1, 2, 3 ], "example": 1 }, "trigger": { "type": "string", "description": "Trigger type that initiated this execution: `webhook` (incoming HTTP trigger), `chat` (agent chat), `a2a` (agent-to-agent), `mcp` (MCP tool call), `scheduled` (time-based).", "enum": [ "webhook", "chat", "a2a", "mcp", "scheduled" ], "example": "webhook" }, "timestamp": { "format": "date-time", "type": "string", "description": "Execution start time, as an ISO 8601 timestamp in UTC.", "example": "2024-02-14T21:08:51.961Z" }, "duration": { "type": "number", "description": "Total execution wall-clock time, in milliseconds.", "example": 233 }, "verifier": { "type": "boolean", "description": "True for manual runs, which are run to verify/test the automation; false for automatic runs.", "example": false }, "bundles": { "type": "number", "description": "Total number of data bundles processed across all modules during the execution.", "example": 1 }, "operations": { "type": "number", "description": "Total number of module operations performed during the execution.", "example": 2 }, "transfer": { "type": "number", "description": "Total amount of data transferred during the execution, in bytes.", "example": 17 }, "modules": { "description": "Per-module operation statistics. Each entry contains `package` (app/connector package), `module` (module name), and `operations` (operations performed by that module).", "example": [ { "package": "gateway", "module": "CustomWebHook", "operations": 1 }, { "package": "util", "module": "SetVariable2", "operations": 1 } ], "type": "array", "items": { "type": "array" } }, "processing": { "type": "boolean", "description": "True while the execution is still being processed; false once it has completed. Logs may be partial while this is true.", "example": false }, "config": { "type": "object", "description": "Scenario runtime configuration snapshot. Boolean flags: `dlq`, `instant`, `dataloss`, `listener`, `parallel`, `autoCommit`, `sequential`, `localAccess`, `confidential`. Numbers: `roundtrips`, `maxFileSize` (bytes), `timeout` (milliseconds).", "example": { "dlq": false, "instant": false, "dataloss": false, "listener": false, "parallel": true, "autoCommit": true, "roundtrips": 1, "sequential": false, "localAccess": false, "maxFileSize": 500000000, "confidential": false, "timeout": 2400000 } } }, "required": [ "id", "type", "kind", "kindId", "teamId", "organizationId", "authorId", "status", "trigger", "timestamp", "duration", "verifier", "bundles", "operations", "transfer", "modules", "processing", "config" ] }, "ExecutionSearchResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/ExecutionDto" } } }, "required": [ "_page", "_links", "items" ] }, "DataStructureBaseDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Unique identifier of the data structure.", "example": 42 }, "name": { "type": "string", "description": "Display name of the data structure.", "example": "Customer record" }, "strict": { "type": "boolean", "description": "When true, all values stored against this structure must conform exactly to its spec.", "example": false }, "teamId": { "type": "number", "description": "ID of the team that owns this data structure. The search endpoint always scopes results to this team; clients can also use it as an explicit filter.", "example": 88 } }, "required": [ "id", "name", "strict", "teamId" ] }, "DataStructuresSearchResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "description": "Array of data structures matching the search criteria.", "type": "array", "items": { "$ref": "#/components/schemas/DataStructureBaseDto" } } }, "required": [ "_page", "_links", "items" ] }, "DataStructureSpecType": { "type": "string", "enum": [ "array", "collection", "date", "text", "number", "boolean", "buffer", "password" ], "description": "Field type. Allowed values: array, collection, date, text, number, boolean, buffer, password." }, "DataStructureSpecDto": { "type": "object", "properties": { "name": { "type": "string", "description": "Field name. Required unless this item is a COLLECTION inside an ARRAY.", "example": "name" }, "label": { "type": "string", "description": "Field label", "example": "Full Name", "nullable": true }, "type": { "description": "Field type. Allowed values: array, collection, date, text, number, boolean, buffer, password.", "example": "text", "allOf": [ { "$ref": "#/components/schemas/DataStructureSpecType" } ] }, "required": { "type": "boolean", "description": "Whether the field is required", "example": true }, "default": { "type": "object", "description": "Default value for the field. Must match the field type.", "example": "Unknown" }, "spec": { "description": "Nested spec for array and collection types. For array: a single object. For collection: an array of objects.", "oneOf": [ { "type": "object", "$ref": "#/components/schemas/DataStructureSpecDto" }, { "type": "array", "items": { "$ref": "#/components/schemas/DataStructureSpecDto" } } ], "example": [ { "name": "firstName", "type": "text" }, { "name": "age", "type": "number" } ] }, "sequence": { "type": "boolean", "description": "Sequence flag for collections", "example": true }, "multiline": { "type": "boolean", "description": "Multiline flag for text fields", "example": false }, "codepage": { "type": "string", "description": "Codepage for text fields", "example": "utf-8" } }, "required": [ "name", "type" ] }, "DataStructureResponseDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Unique identifier of the data structure.", "example": 42 }, "name": { "type": "string", "description": "Display name of the data structure.", "example": "Customer record" }, "strict": { "type": "boolean", "description": "When true, all values stored against this structure must conform exactly to its spec.", "example": false }, "teamId": { "type": "number", "description": "ID of the team that owns this data structure. The search endpoint always scopes results to this team; clients can also use it as an explicit filter.", "example": 88 }, "spec": { "description": "Specification Description", "type": "array", "items": { "$ref": "#/components/schemas/DataStructureSpecDto" } } }, "required": [ "id", "name", "strict", "teamId", "spec" ] }, "CloneDataStructureDto": { "type": "object", "properties": { "name": { "type": "string", "description": "Clone name. Defaults to the source name plus \" (clone)\".", "minLength": 1, "maxLength": 128, "example": "Customer Profile (clone)" }, "teamId": { "type": "integer", "description": "Target team in the same organization. Defaults to the source team.", "example": 10 } } }, "UserOrganizationRoleDto": { "type": "object", "properties": { "usersRoleId": { "type": "number", "description": "Role id the user holds in the organization.", "example": 5 }, "userId": { "type": "number", "description": "The user id.", "example": 42 }, "organizationId": { "type": "number", "description": "Organization id.", "example": 12989 }, "userExternalId": { "type": "object", "description": "IMS external user id in this org, or null.", "nullable": true, "example": "ADA@AdobeID" } }, "required": [ "usersRoleId", "userId", "organizationId", "userExternalId" ] }, "UserTeamRoleDto": { "type": "object", "properties": { "usersRoleId": { "type": "number", "description": "Role id the user holds in the team.", "example": 8 }, "userId": { "type": "number", "description": "The user id.", "example": 42 }, "teamId": { "type": "number", "description": "Team id.", "example": 777 }, "changeable": { "type": "boolean", "description": "Whether the role can be changed (false when the user is an org owner).", "example": true } }, "required": [ "usersRoleId", "userId", "teamId", "changeable" ] }, "UserMeResponseDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Unique user identifier.", "example": 42 }, "name": { "type": "string", "description": "Display name.", "example": "Ada Lovelace" }, "email": { "type": "string", "description": "Email address.", "example": "ada@example.com" }, "language": { "type": "object", "description": "ISO 639-1 language code.", "example": "en", "nullable": true }, "timezoneId": { "type": "number", "description": "Timezone FK.", "example": 1 }, "localeId": { "type": "number", "description": "Locale FK.", "example": 1 }, "countryId": { "type": "number", "description": "Country FK.", "example": 1 }, "features": { "type": "object", "description": "Feature flags map (never null).", "additionalProperties": true, "example": {} }, "avatar": { "type": "string", "description": "Computed Gravatar URL.", "example": "https://secure.gravatar.com/avatar/abc.jpg?d=mm" }, "timezone": { "type": "string", "description": "Timezone name.", "example": "America/Los_Angeles" }, "locale": { "type": "string", "description": "Locale code.", "example": "en_US" }, "userOrganizationRoles": { "description": "The user’s organization roles.", "type": "array", "items": { "$ref": "#/components/schemas/UserOrganizationRoleDto" } }, "userTeamRoles": { "description": "The user’s team roles.", "type": "array", "items": { "$ref": "#/components/schemas/UserTeamRoleDto" } } }, "required": [ "id", "name", "email", "language", "timezoneId", "localeId", "countryId", "features", "avatar", "timezone", "locale", "userOrganizationRoles", "userTeamRoles" ] }, "RegionsResponseDto": { "type": "object", "properties": { "region": { "type": "string", "description": "Fusion region code, e.g. or2, irl1, va7, nld2" }, "organizationId": { "type": "integer", "minimum": -9007199254740991, "maximum": 9007199254740991, "description": "Fusion organization id in that region" } }, "required": [ "region", "organizationId" ] }, "UserListItemDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Unique user identifier. Filterable by several ids at once: `?property=id==1,2,3`.", "example": 42 }, "name": { "type": "string", "description": "Display name.", "example": "Ada Lovelace" }, "email": { "type": "string", "description": "Email address.", "example": "ada@example.com" }, "language": { "type": "object", "description": "ISO 639-1 language code.", "example": "en", "nullable": true }, "timezoneId": { "type": "number", "description": "Timezone FK.", "example": 1 }, "localeId": { "type": "number", "description": "Locale FK.", "example": 1 }, "countryId": { "type": "number", "description": "Country FK.", "example": 1 }, "features": { "type": "object", "description": "Feature flags map (never null; empty object when unset).", "additionalProperties": true, "example": {} }, "avatar": { "type": "string", "description": "Computed Gravatar URL.", "example": "https://secure.gravatar.com/avatar/abc.jpg?d=mm" }, "lastLogin": { "type": "object", "description": "Last login (ISO 8601).", "nullable": true }, "imsUserId": { "type": "string", "description": "IMS user id, when the user is provisioned in the scoping organization." } }, "required": [ "id", "name", "email", "language", "timezoneId", "localeId", "countryId", "features", "avatar" ] }, "UsersSearchResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/UserListItemDto" } } }, "required": [ "_page", "_links", "items" ] }, "TeamListItemDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Team ID.", "example": 777 }, "name": { "type": "string", "description": "Team name.", "example": "Marketing" }, "organizationId": { "type": "number", "description": "Owning organization ID.", "example": 12989 } }, "required": [ "id", "name", "organizationId" ] }, "TeamsSearchResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/TeamListItemDto" } } }, "required": [ "_page", "_links", "items" ] }, "OrganizationTeamSummaryDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Team id.", "example": 777 }, "name": { "type": "string", "description": "Team name.", "example": "Marketing" } }, "required": [ "id", "name" ] }, "OrganizationListItemDto": { "type": "object", "properties": { "id": { "type": "number", "description": "Organization id.", "example": 12989 }, "name": { "type": "string", "description": "Organization name.", "example": "Acme Inc." }, "countryId": { "type": "number", "description": "Country id of the organization.", "example": 1 }, "timezoneId": { "type": "number", "description": "Timezone id of the organization.", "example": 113 }, "license": { "type": "object", "description": "Organization license: resource limits and feature flags (null when unset).", "additionalProperties": true, "nullable": true, "example": { "users": 10, "operations": 10000, "transfer": 1073741824, "interval": 1 } }, "isPaused": { "type": "boolean", "description": "Whether the organization is paused.", "example": false }, "externalId": { "type": "object", "description": "External organization id set by the integrating system.", "nullable": true, "example": "ext-123" }, "externalOrgId": { "type": "string", "description": "External (IMS) organization id.", "example": "1234ABCD@AdobeOrg" }, "imsMigrated": { "type": "boolean", "description": "Whether the caller is linked to this organization through IMS.", "example": true }, "teams": { "description": "Teams the caller belongs to in this org.", "type": "array", "items": { "$ref": "#/components/schemas/OrganizationTeamSummaryDto" } } }, "required": [ "id", "name", "countryId", "timezoneId", "isPaused", "externalId", "externalOrgId", "imsMigrated", "teams" ] }, "OrganizationsSearchResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/OrganizationListItemDto" } } }, "required": [ "_page", "_links", "items" ] }, "DlqV3Dto": { "type": "object", "properties": { "id": { "type": "string", "description": "DLQ record ID.", "example": "84a63c7308cf48abb63dbf935b1aa22f" }, "scenarioId": { "type": "number", "description": "Automation (scenario) ID.", "example": 1 }, "teamId": { "type": "number", "description": "Team ID associated with the DLQ.", "example": 17750 }, "reason": { "type": "string", "description": "Reason the execution failed.", "example": "Failed to process the event" }, "created": { "format": "date-time", "type": "string", "description": "Time the DLQ record was created (UTC).", "example": "2021-09-29T14:00:00.000Z" }, "size": { "type": "number", "description": "Size of the failed execution in bytes.", "example": 256 }, "resolved": { "type": "boolean", "description": "Whether the DLQ has been resolved.", "example": true }, "retry": { "type": "boolean", "description": "Whether this DLQ is eligible for retry.", "example": true }, "attempts": { "type": "number", "description": "Number of retry attempts (zero when absent).", "example": 3 }, "executionId": { "type": "string", "description": "ID of the failed execution.", "example": "fd536f7baf54472ba088c98fac2d4956" } }, "required": [ "id", "scenarioId", "reason", "created", "size", "resolved", "retry", "attempts", "executionId" ] }, "DlqSearchResponseDto": { "type": "object", "properties": { "_page": { "description": "Pagination metadata", "allOf": [ { "$ref": "#/components/schemas/PageMetadataDto" } ] }, "_links": { "description": "Pagination links", "allOf": [ { "$ref": "#/components/schemas/PageLinksDto" } ] }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/DlqV3Dto" } } }, "required": [ "_page", "_links", "items" ] } }, "securitySchemes": { "Authorization": { "type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "**Required.** IMS access token for authenticating the user or technical account making the request.\n\nSee the [Authentication guide](https://developer-stage.adobe.com/workfront-fusion-apis/getting-started/authentication/) for detailed instructions on obtaining access tokens.\n\n[API Headers Documentation](https://developer-stage.adobe.com/workfront-fusion-apis/getting-started/api_headers/)\n" }, "Organization ID": { "type": "apiKey", "in": "header", "name": "x-organization-id", "description": "**Required.** Your Fusion Organization ID. Must be a number. Scopes all requests to your specific Fusion organization. You can find this ID in the Fusion Org Overview page URL: `/organization/{organizationId}/dashboard`.\n\n**Example:** `12345`\n\n[API Headers Documentation](https://developer-stage.adobe.com/workfront-fusion-apis/getting-started/api_headers/)\n" }, "API Key": { "type": "apiKey", "in": "header", "name": "x-api-key", "description": "**Required.** Your application's Client ID from Adobe Developer Console. This identifies your application and is the same value used for IMS authentication.\n\n[API Headers Documentation](https://developer-stage.adobe.com/workfront-fusion-apis/getting-started/api_headers/)\n" }, "Region": { "type": "apiKey", "in": "header", "name": "x-gw-region", "description": "**Required.** Routes requests to the correct Fusion regional instance.\n\n**Example:** `or2`\n\n[API Headers Documentation](https://developer-stage.adobe.com/workfront-fusion-apis/getting-started/api_headers/)\n" } } } }