Skip to content

Public API Reference

Readable reference for the Dezycro public REST API, generated at build time from the OpenAPI spec. Prefer firing test requests? Use the interactive explorer.

Dezycro Public API 1.0.0

Public


GET /api/v1/pats

List personal access tokens for the current user in the tenant

Input parameters

Parameter In Type Default Nullable Description
name query string | null Yes Filter by token name (partial match, supports * wildcard)
page query integer 1 No Page number (1-indexed)
size query integer 10 No Number of items per page (1-100, default 10)

Responses

{
    "data": [
        {
            "createdAt": "2022-03-10T12:15:50",
            "id": "0ba2d334-8a77-48bd-9068-6cd23ad829b9",
            "lastUsedAt": "2022-03-10T12:15:50",
            "name": "string",
            "scope": "TENANT",
            "token": "string",
            "tokenPrefix": "string",
            "workspaceId": "16c6f14a-6c56-4f39-b1ed-a721c22367b3"
        }
    ],
    "page": 293,
    "size": 119,
    "totalElements": 256
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Paginated list response wrapper",
    "properties": {
        "data": {
            "items": {
                "$ref": "#/components/schemas/PatDto"
            },
            "type": "array"
        },
        "page": {
            "format": "int32",
            "type": "integer"
        },
        "size": {
            "format": "int32",
            "type": "integer"
        },
        "totalElements": {
            "format": "int64",
            "type": "integer"
        }
    },
    "required": [
        "data",
        "page",
        "size",
        "totalElements"
    ],
    "type": "object"
}

POST /api/v1/pats

Create a new tenant-scoped personal access token

Request body

{
    "createdAt": "2022-03-10T12:15:50",
    "id": "6896ddde-7e89-4708-a4e1-52719d49e25b",
    "lastUsedAt": "2022-03-10T12:15:50",
    "name": "string",
    "scope": "TENANT",
    "token": "string",
    "tokenPrefix": "string",
    "workspaceId": "04aef50b-5718-4d4c-8ed7-d7976e8929be"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Personal Access Token",
    "properties": {
        "createdAt": {
            "examples": [
                "2022-03-10T12:15:50"
            ],
            "format": "date-time",
            "type": [
                "string",
                "null"
            ]
        },
        "id": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "lastUsedAt": {
            "examples": [
                "2022-03-10T12:15:50"
            ],
            "format": "date-time",
            "type": [
                "string",
                "null"
            ]
        },
        "name": {
            "type": "string"
        },
        "scope": {
            "enum": [
                "TENANT",
                "WORKSPACE"
            ],
            "type": [
                "string",
                "null"
            ]
        },
        "token": {
            "type": [
                "string",
                "null"
            ]
        },
        "tokenPrefix": {
            "type": [
                "string",
                "null"
            ]
        },
        "workspaceId": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        }
    },
    "required": [
        "name"
    ],
    "type": "object"
}

Responses

{
    "createdAt": "2022-03-10T12:15:50",
    "id": "de7625ae-eccf-4be5-9598-6f73b31794c2",
    "lastUsedAt": "2022-03-10T12:15:50",
    "name": "string",
    "scope": "TENANT",
    "token": "string",
    "tokenPrefix": "string",
    "workspaceId": "f52b5d00-2239-4ce9-ba1b-bc6b8341805e"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Personal Access Token",
    "properties": {
        "createdAt": {
            "examples": [
                "2022-03-10T12:15:50"
            ],
            "format": "date-time",
            "type": [
                "string",
                "null"
            ]
        },
        "id": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "lastUsedAt": {
            "examples": [
                "2022-03-10T12:15:50"
            ],
            "format": "date-time",
            "type": [
                "string",
                "null"
            ]
        },
        "name": {
            "type": "string"
        },
        "scope": {
            "enum": [
                "TENANT",
                "WORKSPACE"
            ],
            "type": [
                "string",
                "null"
            ]
        },
        "token": {
            "type": [
                "string",
                "null"
            ]
        },
        "tokenPrefix": {
            "type": [
                "string",
                "null"
            ]
        },
        "workspaceId": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        }
    },
    "required": [
        "name"
    ],
    "type": "object"
}

DELETE /api/v1/pats/{id}

Revoke a personal access token

Input parameters

Parameter In Type Default Nullable Description
id path string No Token ID to revoke

Responses


GET /api/v1/workspaces

List workspaces

Description

Returns all workspaces the current user has access to within the tenant.

Input parameters

Parameter In Type Default Nullable Description
name query string | null Yes Filter workspaces by name (partial match)
page query integer 1 No Page number (1-indexed)
size query integer 10 No Number of items per page (1-100, default 10)

Responses

{
    "data": [
        {
            "id": "1d354931-a53a-4cb0-af2f-753df64c3fd3",
            "name": "string",
            "tenantId": "78f02237-c3a7-409e-9106-c26eaa82e52a"
        }
    ],
    "page": 103,
    "size": 241,
    "totalElements": 213
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Paginated list response wrapper",
    "properties": {
        "data": {
            "items": {
                "$ref": "#/components/schemas/WorkspaceDto"
            },
            "type": "array"
        },
        "page": {
            "format": "int32",
            "type": "integer"
        },
        "size": {
            "format": "int32",
            "type": "integer"
        },
        "totalElements": {
            "format": "int64",
            "type": "integer"
        }
    },
    "required": [
        "data",
        "page",
        "size",
        "totalElements"
    ],
    "type": "object"
}

GET /api/v1/workspaces/{workspaceId}/projects

Input parameters

Parameter In Type Default Nullable Description
includeArchived query boolean False No
nameWildcard query string No
page query integer 1 No Page number (1-indexed)
size query integer 10 No Number of items per page (1-100, default 10)
workspaceId path string No

Responses

{
    "data": [
        {
            "description": "string",
            "id": "b2913f1e-5024-4052-bc2d-763472e16b15",
            "name": "string",
            "status": "ACTIVE",
            "workspaceId": "d1e7bea4-b19b-4304-8ba6-10aebcb51f3f"
        }
    ],
    "page": 96,
    "size": 256,
    "totalElements": 130
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Paginated list response wrapper",
    "properties": {
        "data": {
            "items": {
                "$ref": "#/components/schemas/ProjectDto"
            },
            "type": "array"
        },
        "page": {
            "format": "int32",
            "type": "integer"
        },
        "size": {
            "format": "int32",
            "type": "integer"
        },
        "totalElements": {
            "format": "int64",
            "type": "integer"
        }
    },
    "required": [
        "data",
        "page",
        "size",
        "totalElements"
    ],
    "type": "object"
}

POST /api/v1/workspaces/{workspaceId}/projects

Input parameters

Parameter In Type Default Nullable Description
workspaceId path string No

Request body

{
    "description": "string",
    "id": "da08066f-c0a7-493f-9512-3094960dcd9c",
    "name": "string",
    "status": "ACTIVE",
    "workspaceId": "f9292f6e-9ace-4a1d-b891-4c3512cdc29e"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "A software project within a workspace — the main organizational unit for test cases and documentation",
    "properties": {
        "description": {
            "type": [
                "string",
                "null"
            ]
        },
        "id": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "name": {
            "type": "string"
        },
        "status": {
            "description": "Project lifecycle status",
            "enum": [
                "ACTIVE",
                "ARCHIVED"
            ],
            "type": "string"
        },
        "workspaceId": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        }
    },
    "required": [
        "name"
    ],
    "type": "object"
}

Responses

{
    "description": "string",
    "id": "85124690-34b0-425e-b869-6067f5b8c534",
    "name": "string",
    "status": "ACTIVE",
    "workspaceId": "6bb1e122-7166-49c9-af03-d30fa9583a7a"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "A software project within a workspace — the main organizational unit for test cases and documentation",
    "properties": {
        "description": {
            "type": [
                "string",
                "null"
            ]
        },
        "id": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "name": {
            "type": "string"
        },
        "status": {
            "description": "Project lifecycle status",
            "enum": [
                "ACTIVE",
                "ARCHIVED"
            ],
            "type": "string"
        },
        "workspaceId": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        }
    },
    "required": [
        "name"
    ],
    "type": "object"
}

DELETE /api/v1/workspaces/{workspaceId}/projects/{projectId}

Input parameters

Parameter In Type Default Nullable Description
projectId path string No
workspaceId path string No

Responses


GET /api/v1/workspaces/{workspaceId}/projects/{projectId}

Input parameters

Parameter In Type Default Nullable Description
projectId path string No
workspaceId path string No

Responses

{
    "description": "string",
    "id": "ea2ebecc-4d2b-4acd-8a73-9ae885fc9554",
    "name": "string",
    "status": "ACTIVE",
    "workspaceId": "037a75e5-af95-465a-9fd7-b8642153a639"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "A software project within a workspace — the main organizational unit for test cases and documentation",
    "properties": {
        "description": {
            "type": [
                "string",
                "null"
            ]
        },
        "id": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "name": {
            "type": "string"
        },
        "status": {
            "description": "Project lifecycle status",
            "enum": [
                "ACTIVE",
                "ARCHIVED"
            ],
            "type": "string"
        },
        "workspaceId": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        }
    },
    "required": [
        "name"
    ],
    "type": "object"
}

PUT /api/v1/workspaces/{workspaceId}/projects/{projectId}

Input parameters

Parameter In Type Default Nullable Description
projectId path string No
workspaceId path string No

Request body

{
    "description": "string",
    "id": "46cee94f-6aea-46fc-b047-808b93999274",
    "name": "string",
    "status": "ACTIVE",
    "workspaceId": "fa43ca2b-2f85-498c-af23-806922bbd5af"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "A software project within a workspace — the main organizational unit for test cases and documentation",
    "properties": {
        "description": {
            "type": [
                "string",
                "null"
            ]
        },
        "id": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "name": {
            "type": "string"
        },
        "status": {
            "description": "Project lifecycle status",
            "enum": [
                "ACTIVE",
                "ARCHIVED"
            ],
            "type": "string"
        },
        "workspaceId": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        }
    },
    "required": [
        "name"
    ],
    "type": "object"
}

Responses

{
    "description": "string",
    "id": "b90ca824-b0b0-457b-b74a-3187a0e6b565",
    "name": "string",
    "status": "ACTIVE",
    "workspaceId": "3c03bf3e-9683-4de8-80dd-3f277de671ca"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "A software project within a workspace — the main organizational unit for test cases and documentation",
    "properties": {
        "description": {
            "type": [
                "string",
                "null"
            ]
        },
        "id": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "name": {
            "type": "string"
        },
        "status": {
            "description": "Project lifecycle status",
            "enum": [
                "ACTIVE",
                "ARCHIVED"
            ],
            "type": "string"
        },
        "workspaceId": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        }
    },
    "required": [
        "name"
    ],
    "type": "object"
}

GET /api/v1/workspaces/{workspaceId}/projects/{projectId}/test-personas

List test personas

Input parameters

Parameter In Type Default Nullable Description
name query string | null Yes Filter by persona name (partial match)
page query integer 1 No Page number (1-indexed)
projectId path string No Project ID
scope query string | null Yes Persona scope filter (TENANT, WORKSPACE, or PROJECT)
size query integer 10 No Number of items per page (1-100, default 10)
workspaceId path string No Workspace ID

Responses

{
    "data": [
        {
            "authType": "BEARER",
            "description": "string",
            "envVar": "string",
            "id": "fc554a0f-9ee6-4a1c-bb98-bd9356411ce8",
            "name": "string",
            "projectId": "10149f78-5a87-4d9b-a055-3d4c636920f7",
            "scope": "TENANT",
            "script": "string"
        }
    ],
    "page": 229,
    "size": 91,
    "totalElements": 254
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Paginated list response wrapper",
    "properties": {
        "data": {
            "items": {
                "$ref": "#/components/schemas/TestPersonaDto"
            },
            "type": "array"
        },
        "page": {
            "format": "int32",
            "type": "integer"
        },
        "size": {
            "format": "int32",
            "type": "integer"
        },
        "totalElements": {
            "format": "int64",
            "type": "integer"
        }
    },
    "required": [
        "data",
        "page",
        "size",
        "totalElements"
    ],
    "type": "object"
}

POST /api/v1/workspaces/{workspaceId}/projects/{projectId}/test-personas

Create a test persona

Input parameters

Parameter In Type Default Nullable Description
projectId path string No Project ID
workspaceId path string No Workspace ID

Request body

{
    "authType": "BEARER",
    "description": "string",
    "envVar": "string",
    "id": "22e5cde9-a5bb-47d3-a532-2a9ecf3e235e",
    "name": "string",
    "projectId": "e28fb181-8be5-4a87-ab34-c87a7b717f1a",
    "scope": "TENANT",
    "script": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Test persona for authentication in generated tests",
    "properties": {
        "authType": {
            "enum": [
                "BEARER",
                "BASIC",
                "HEADER",
                "HTTP_ENDPOINT",
                "JS",
                "NONE"
            ],
            "type": "string"
        },
        "description": {
            "type": "string"
        },
        "envVar": {
            "type": [
                "string",
                "null"
            ]
        },
        "id": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "name": {
            "type": "string"
        },
        "projectId": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "scope": {
            "enum": [
                "TENANT",
                "WORKSPACE",
                "PROJECT"
            ],
            "type": "string"
        },
        "script": {
            "type": [
                "string",
                "null"
            ]
        }
    },
    "required": [
        "name",
        "description",
        "authType",
        "scope"
    ],
    "type": "object"
}

Responses

{
    "authType": "BEARER",
    "description": "string",
    "envVar": "string",
    "id": "85fa57d5-fb0a-493f-a581-c76a52c63f5a",
    "name": "string",
    "projectId": "726f3e4a-2ba6-45d4-9fd2-38c354c58a30",
    "scope": "TENANT",
    "script": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Test persona for authentication in generated tests",
    "properties": {
        "authType": {
            "enum": [
                "BEARER",
                "BASIC",
                "HEADER",
                "HTTP_ENDPOINT",
                "JS",
                "NONE"
            ],
            "type": "string"
        },
        "description": {
            "type": "string"
        },
        "envVar": {
            "type": [
                "string",
                "null"
            ]
        },
        "id": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "name": {
            "type": "string"
        },
        "projectId": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "scope": {
            "enum": [
                "TENANT",
                "WORKSPACE",
                "PROJECT"
            ],
            "type": "string"
        },
        "script": {
            "type": [
                "string",
                "null"
            ]
        }
    },
    "required": [
        "name",
        "description",
        "authType",
        "scope"
    ],
    "type": "object"
}

DELETE /api/v1/workspaces/{workspaceId}/projects/{projectId}/test-personas/{personaId}

Delete a test persona

Input parameters

Parameter In Type Default Nullable Description
personaId path string No Persona ID
projectId path string No Project ID
workspaceId path string No Workspace ID

Responses


PUT /api/v1/workspaces/{workspaceId}/projects/{projectId}/test-personas/{personaId}

Update a test persona

Input parameters

Parameter In Type Default Nullable Description
personaId path string No Persona ID
projectId path string No Project ID
workspaceId path string No Workspace ID

Request body

{
    "authType": "BEARER",
    "description": "string",
    "envVar": "string",
    "id": "7867117a-4616-41c7-8165-f245236f0b1c",
    "name": "string",
    "projectId": "c9b80fd6-f7d1-4836-acab-51c602aa8711",
    "scope": "TENANT",
    "script": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Test persona for authentication in generated tests",
    "properties": {
        "authType": {
            "enum": [
                "BEARER",
                "BASIC",
                "HEADER",
                "HTTP_ENDPOINT",
                "JS",
                "NONE"
            ],
            "type": "string"
        },
        "description": {
            "type": "string"
        },
        "envVar": {
            "type": [
                "string",
                "null"
            ]
        },
        "id": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "name": {
            "type": "string"
        },
        "projectId": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "scope": {
            "enum": [
                "TENANT",
                "WORKSPACE",
                "PROJECT"
            ],
            "type": "string"
        },
        "script": {
            "type": [
                "string",
                "null"
            ]
        }
    },
    "required": [
        "name",
        "description",
        "authType",
        "scope"
    ],
    "type": "object"
}

Responses

{
    "authType": "BEARER",
    "description": "string",
    "envVar": "string",
    "id": "ffd9eb97-63c5-498b-b7ef-1336016caab1",
    "name": "string",
    "projectId": "d65d54ad-24bd-430c-b644-2618ce5cf030",
    "scope": "TENANT",
    "script": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Test persona for authentication in generated tests",
    "properties": {
        "authType": {
            "enum": [
                "BEARER",
                "BASIC",
                "HEADER",
                "HTTP_ENDPOINT",
                "JS",
                "NONE"
            ],
            "type": "string"
        },
        "description": {
            "type": "string"
        },
        "envVar": {
            "type": [
                "string",
                "null"
            ]
        },
        "id": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "name": {
            "type": "string"
        },
        "projectId": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": [
                "string",
                "null"
            ]
        },
        "scope": {
            "enum": [
                "TENANT",
                "WORKSPACE",
                "PROJECT"
            ],
            "type": "string"
        },
        "script": {
            "type": [
                "string",
                "null"
            ]
        }
    },
    "required": [
        "name",
        "description",
        "authType",
        "scope"
    ],
    "type": "object"
}

GET /api/v1/workspaces/{workspaceId}/projects/{projectId}/test-runs

Input parameters

Parameter In Type Default Nullable Description
page query integer 1 No Page number (1-indexed)
projectId path string No
size query integer 10 No Number of items per page (1-100, default 10)
sort query string | null Yes
startedAfter query string | null Yes
startedBefore query string | null Yes
status query string | null Yes
workspaceId path string No

Responses

{
    "data": [
        {
            "branch": "string",
            "commitId": "string",
            "completedAt": "2022-03-10T16:15:50Z",
            "durationMs": 167,
            "failed": 285,
            "imageTag": "string",
            "passed": 59,
            "projectId": "f2071db4-92b9-446f-ab7d-ddf247b7f137",
            "runId": "cc325c18-85f9-44ef-956f-fcf998c6dfd2",
            "skipped": 111,
            "startedAt": "2022-03-10T16:15:50Z",
            "status": "string",
            "tenantId": "491eecb6-10e6-4e61-aeac-3dd0aa36608c",
            "totalTests": 190
        }
    ],
    "page": 157,
    "size": 50,
    "totalElements": 201
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Paginated list response wrapper",
    "properties": {
        "data": {
            "items": {
                "$ref": "#/components/schemas/TestRunDto"
            },
            "type": "array"
        },
        "page": {
            "format": "int32",
            "type": "integer"
        },
        "size": {
            "format": "int32",
            "type": "integer"
        },
        "totalElements": {
            "format": "int64",
            "type": "integer"
        }
    },
    "required": [
        "data",
        "page",
        "size",
        "totalElements"
    ],
    "type": "object"
}

GET /api/v1/workspaces/{workspaceId}/projects/{projectId}/test-runs/{runId}/results

Input parameters

Parameter In Type Default Nullable Description
page query integer 1 No Page number (1-indexed)
projectId path string No
runId path string No
size query integer 10 No Number of items per page (1-100, default 10)
status query string | null Yes
testCaseName query string | null Yes
workspaceId path string No

Responses

{
    "data": [
        {
            "durationMs": 158,
            "endedAt": "2022-03-10T16:15:50Z",
            "errorMessage": "string",
            "journeyRef": "string",
            "logUrl": "string",
            "runId": "3ac987ab-8c22-4194-8d3c-cf6b9b7b5c14",
            "startedAt": "2022-03-10T16:15:50Z",
            "status": "string",
            "stepTraces": [
                {
                    "durationMs": 166,
                    "error": "string",
                    "expectedStatus": 300,
                    "method": "string",
                    "passed": true,
                    "path": "string",
                    "requestBody": "string",
                    "requestHeaders": {},
                    "responseBody": "string",
                    "responseHeaders": {},
                    "statusCode": 18,
                    "stepDescription": "string",
                    "testCaseStepIndex": 182,
                    "timestamp": "string"
                }
            ],
            "testCaseId": "f77d8c12-a92f-4b13-b3ae-a314e583173e",
            "testName": "string"
        }
    ],
    "page": 34,
    "size": 10,
    "totalElements": 95
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Paginated list response wrapper",
    "properties": {
        "data": {
            "items": {
                "$ref": "#/components/schemas/TestCaseResultDto"
            },
            "type": "array"
        },
        "page": {
            "format": "int32",
            "type": "integer"
        },
        "size": {
            "format": "int32",
            "type": "integer"
        },
        "totalElements": {
            "format": "int64",
            "type": "integer"
        }
    },
    "required": [
        "data",
        "page",
        "size",
        "totalElements"
    ],
    "type": "object"
}

GET /api/v1/workspaces/{workspaceId}/projects/{projectId}/test-runs/{runId}/results/{testCaseId}/log

Input parameters

Parameter In Type Default Nullable Description
projectId path string No
runId path string No
testCaseId path string No
workspaceId path string No

Responses

Schema of the response body
{
    "additionalProperties": {
        "type": "string"
    },
    "type": "object"
}

GET /api/v1/workspaces/{workspaceId}/projects/{projectId}/validation-cases

List validation cases

Input parameters

Parameter In Type Default Nullable Description
featureId query string | null Yes Filter by feature ID
page query integer 1 No Page number (1-indexed)
projectId path string No
size query integer 10 No Number of items per page (1-100, default 10)
status query string | null Yes Filter by status
workspaceId path string No

Responses

{
    "data": [
        {
            "assertionsFromPrd": [
                {
                    "description": "string",
                    "graphCaptured": true,
                    "prdQuote": "string",
                    "type": "string"
                }
            ],
            "coverageFlags": [
                "string"
            ],
            "dataExpectations": [
                "string"
            ],
            "description": "string",
            "edgeCasesFromPrd": [
                "string"
            ],
            "enrichmentModelVersion": "string",
            "featureId": "22c8a0be-c7dd-45ef-9a88-8795a4f67f6f",
            "generatedAt": "2022-03-10T16:15:50Z",
            "globalConstraints": [
                "string"
            ],
            "id": "76fb0f88-811a-4991-98cd-7b00fe4a5c38",
            "name": "string",
            "outcomeType": "string",
            "pathClass": "string",
            "postConditions": [
                "string"
            ],
            "preConditions": [
                "string"
            ],
            "priority": "string",
            "projectId": "ce557ec6-ec0e-4eae-a8a4-b1021cf62461",
            "riskIndicator": "string",
            "roleRequirement": "string",
            "sectionRefs": [
                {
                    "prdQuote": "string",
                    "sectionHeading": "string",
                    "sectionIndex": 191
                }
            ],
            "sourceContentHash": "string",
            "sourceDecisionRef": "string",
            "sourceJourneyId": "string",
            "sourcePrdId": "78cff334-9092-4857-8fff-39982328e142",
            "status": "string",
            "stepsFromGraph": [
                "string"
            ],
            "type": "string",
            "workspaceId": "81ff9ddf-9931-4458-8fd4-7d36280f97c1"
        }
    ],
    "page": 152,
    "size": 170,
    "totalElements": 274
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Paginated list response wrapper",
    "properties": {
        "data": {
            "items": {
                "$ref": "#/components/schemas/ValidationCaseDto"
            },
            "type": "array"
        },
        "page": {
            "format": "int32",
            "type": "integer"
        },
        "size": {
            "format": "int32",
            "type": "integer"
        },
        "totalElements": {
            "format": "int64",
            "type": "integer"
        }
    },
    "required": [
        "data",
        "page",
        "size",
        "totalElements"
    ],
    "type": "object"
}

POST /api/v1/workspaces/{workspaceId}/projects/{projectId}/validation-cases/generate

Trigger validation case generation

Input parameters

Parameter In Type Default Nullable Description
projectId path string No
workspaceId path string No

Request body

{
    "featureId": "03417d39-c161-43c2-8960-955cc54934a3"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Request body for triggering validation case generation",
    "properties": {
        "featureId": {
            "format": "uuid",
            "pattern": "[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}",
            "type": "string"
        }
    },
    "required": [
        "featureId"
    ],
    "type": "object"
}

Responses

{
    "workflowId": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "workflowId": {
            "type": "string"
        }
    },
    "required": [
        "workflowId"
    ],
    "type": "object"
}

GET /api/v1/workspaces/{workspaceId}/projects/{projectId}/validation-cases/generate/status/{workflowId}

Get validation case generation status

Input parameters

Parameter In Type Default Nullable Description
projectId path string No
workflowId path string No
workspaceId path string No

Responses

{
    "enrichedCases": 272,
    "message": "string",
    "persistedCases": 112,
    "phase": "string",
    "status": "string",
    "totalSkeletons": 157
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Status of a validation case generation workflow",
    "properties": {
        "enrichedCases": {
            "format": "int32",
            "type": "integer"
        },
        "message": {
            "type": "string"
        },
        "persistedCases": {
            "format": "int32",
            "type": "integer"
        },
        "phase": {
            "type": [
                "string",
                "null"
            ]
        },
        "status": {
            "type": "string"
        },
        "totalSkeletons": {
            "format": "int32",
            "type": "integer"
        }
    },
    "required": [
        "status",
        "message"
    ],
    "type": "object"
}

Schemas

Assertion

Name Type Description
description string
graphCaptured boolean
prdQuote string
type string

GenerationTriggerDto

Name Type Description
workflowId string

PaginatedResponsePatDto

Name Type Description
data Array<PatDto>
page integer(int32)
size integer(int32)
totalElements integer(int64)

PaginatedResponseProjectDto

Name Type Description
data Array<ProjectDto>
page integer(int32)
size integer(int32)
totalElements integer(int64)

PaginatedResponseTestCaseResultDto

Name Type Description
data Array<TestCaseResultDto>
page integer(int32)
size integer(int32)
totalElements integer(int64)

PaginatedResponseTestPersonaDto

Name Type Description
data Array<TestPersonaDto>
page integer(int32)
size integer(int32)
totalElements integer(int64)

PaginatedResponseTestRunDto

Name Type Description
data Array<TestRunDto>
page integer(int32)
size integer(int32)
totalElements integer(int64)

PaginatedResponseValidationCaseDto

Name Type Description
data Array<ValidationCaseDto>
page integer(int32)
size integer(int32)
totalElements integer(int64)

PaginatedResponseWorkspaceDto

Name Type Description
data Array<WorkspaceDto>
page integer(int32)
size integer(int32)
totalElements integer(int64)

PatDto

Name Type Description
createdAt string(date-time) | null
id string(uuid) | null
lastUsedAt string(date-time) | null
name string
scope string | null
token string | null
tokenPrefix string | null
workspaceId string(uuid) | null

ProjectDto

Name Type Description
description string | null
id string(uuid) | null
name string
status string Project lifecycle status
workspaceId string(uuid) | null

SectionRef

Name Type Description
prdQuote string | null
sectionHeading string
sectionIndex integer(int32)

StepTraceDto

Name Type Description
durationMs integer(int64)
error string
expectedStatus integer(int32) | null
method string
passed boolean | null
path string
requestBody string
requestHeaders
responseBody string
responseHeaders
statusCode integer(int32)
stepDescription string
testCaseStepIndex integer(int32)
timestamp string

TestCaseResultDto

Name Type Description
durationMs integer(int64)
endedAt string(date-time)
errorMessage string
journeyRef string | null
logUrl string
runId string(uuid)
startedAt string(date-time)
status string
stepTraces Array<StepTraceDto>
testCaseId string(uuid)
testName string

TestPersonaDto

Name Type Description
authType string
description string
envVar string | null
id string(uuid) | null
name string
projectId string(uuid) | null
scope string
script string | null

TestRunDto

Name Type Description
branch string | null
commitId string | null
completedAt string(date-time) | null
durationMs integer(int64) | null
failed integer(int32)
imageTag string | null
passed integer(int32)
projectId string(uuid)
runId string(uuid)
skipped integer(int32)
startedAt string(date-time)
status string
tenantId string(uuid)
totalTests integer(int32)

ValidationCaseDto

Name Type Description
assertionsFromPrd Array<Assertion>
coverageFlags Array<string>
dataExpectations Array<string>
description string | null
edgeCasesFromPrd Array<string>
enrichmentModelVersion string | null
featureId string(uuid) | null
generatedAt string(date-time) | null
globalConstraints Array<string>
id string(uuid)
name string
outcomeType string
pathClass string
postConditions Array<string>
preConditions Array<string>
priority string
projectId string(uuid)
riskIndicator string | null
roleRequirement string | null
sectionRefs Array<SectionRef>
sourceContentHash string | null
sourceDecisionRef string | null
sourceJourneyId string | null
sourcePrdId string(uuid)
status string
stepsFromGraph Array<string>
type string
workspaceId string(uuid)

ValidationCaseGenerationStatusDto

Name Type Description
enrichedCases integer(int32)
message string
persistedCases integer(int32)
phase string | null
status string
totalSkeletons integer(int32)

ValidationCaseGenerationTriggerDto

Name Type Description
featureId string(uuid)

WorkspaceDto

Name Type Description
id string(uuid) | null
name string
tenantId string(uuid) | null