{ "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/connections/assets/{name}/{variant}/{size}": { "get": { "description": "Returns a connector PNG asset (`icon` or `color` rendition) at the requested size. Public — no authentication required. `name` accepts both the new connector names (e.g. `adobe-workfront-promise`) and their legacy aliases (e.g. `workfront-workfront3`).", "operationId": "ConnectionAssetsV3Controller_getConnectionAsset_v3", "parameters": [ { "name": "name", "required": true, "in": "path", "description": "Connector or key type name.", "schema": { "pattern": "^[a-z][0-9a-z-]*[0-9a-z]$", "example": "adobe-workfront-promise", "type": "string" } }, { "name": "variant", "required": true, "in": "path", "description": "Asset rendition.", "schema": { "example": "icon", "type": "string", "enum": [ "icon", "color" ] } }, { "name": "size", "required": true, "in": "path", "description": "Asset size in pixels.", "schema": { "example": 128, "type": "number", "enum": [ 32, 64, 128, 256, 512 ] } } ], "responses": { "200": { "description": "PNG image", "content": { "image/png": { "schema": { "type": "string", "format": "binary" } } } }, "400": { "description": "Invalid name, variant, or size" }, "404": { "description": "Asset not found" } }, "summary": "Get a connector asset", "tags": [ "Connections" ], "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ] } }, "/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/keys/assets/{name}/{variant}/{size}": { "get": { "description": "Returns a key type PNG asset (`icon` or `color` rendition) at the requested size. Public — no authentication required.", "operationId": "KeyAssetsV3Controller_getKeyAsset_v3", "parameters": [ { "name": "name", "required": true, "in": "path", "description": "Connector or key type name.", "schema": { "pattern": "^[a-z][0-9a-z-]*[0-9a-z]$", "example": "adobe-workfront-promise", "type": "string" } }, { "name": "variant", "required": true, "in": "path", "description": "Asset rendition.", "schema": { "example": "icon", "type": "string", "enum": [ "icon", "color" ] } }, { "name": "size", "required": true, "in": "path", "description": "Asset size in pixels.", "schema": { "example": 128, "type": "number", "enum": [ 32, 64, 128, 256, 512 ] } } ], "responses": { "200": { "description": "PNG image", "content": { "image/png": { "schema": { "type": "string", "format": "binary" } } } }, "400": { "description": "Invalid name, variant, or size" }, "404": { "description": "Asset not found" } }, "summary": "Get a key type asset", "tags": [ "Keys" ], "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ] } }, "/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/hooks/assets/{name}/{variant}/{size}": { "get": { "description": "Returns a hook manifest's branding PNG (icon or full-color logo) at the requested size. Accepts both the canonical (stored) and public hook type name. Public endpoint -- no authentication required.", "operationId": "HookAssetsController_getAsset_v3", "parameters": [ { "name": "name", "required": true, "in": "path", "description": "Hook type name (canonical or public alias).", "schema": { "example": "adobe-workfront", "type": "string" } }, { "name": "variant", "required": true, "in": "path", "description": "Asset variant: `icon` is the flat/mono glyph, `color` is the full-color logo.", "schema": { "enum": [ "icon", "color" ], "type": "string" } }, { "name": "size", "required": true, "in": "path", "description": "Square PNG size, in pixels.", "schema": { "enum": [ "32", "64", "128", "256", "512" ], "type": "string" } } ], "responses": { "200": { "description": "PNG asset retrieved successfully.", "content": { "image/png": { "schema": { "type": "string", "format": "binary" } } } }, "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" } } } } } }, "summary": "Get a hook asset", "tags": [ "Hooks" ], "security": [ { "Authorization": [], "Organization ID": [], "API Key": [], "Region": [] } ] } }, "/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/data-stores/{dataStoreId}/data/{key}": { "delete": { "description": "Force delete of a single record by key — the delete always proceeds. Idempotent on the key (204 whether or not the key existed); a missing data store returns 404.", "operationId": "DataStoresDataV3Controller_deleteDataKey_v3", "parameters": [ { "name": "dataStoreId", "required": true, "in": "path", "description": "Numeric ID of the data store", "schema": { "example": 1, "type": "number" } }, { "name": "key", "required": true, "in": "path", "description": "Record key", "schema": { "example": "record-1", "type": "string" } } ], "responses": { "204": { "description": "Record 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" } } } } }, "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 record", "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/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", "example": "12989" } } ], "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", "example": "12989" } } ], "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", "example": "12989" } } ], "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", "example": "12989" } }, { "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", "example": "12989" } }, { "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", "example": "12989" } }, { "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", "example": "12989" } }, { "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", "example": "12989" } } ], "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" ] }, "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" } } } }