Update test case
Updates a test case’s authored configuration. Patch semantics: only the fields you provide change; pass null on nullable fields (startUrlPath, scenarioShortId, resumeFromDependencyProjectTestCaseId) to clear them.
The edit takes effect immediately as a new published revision. To de-hardcode a test that 404s on a stale deep link, clear startUrlPath and set resumeFromDependencyProjectTestCaseId to a test that creates the entity it needs — it then starts from that test’s end state with fresh data.
Path Parameters
Body
Patch-style update: omitted fields are left unchanged. Nullable fields (startUrlPath, scenarioShortId, resumeFromDependencyProjectTestCaseId) accept null to clear the current value.
The test's goal — what the agent tries to achieve.
1The expected result, stated as a UI-observable outcome that proves the goal was met.
Full replacement list of step instructions, one action per step in user-visible UI language. Pass an empty array to remove all steps and rely on the goal alone.
URL path the agent navigates to before executing (e.g. /dashboard). Pass null to clear it so the test starts from its RESUME_FROM dependency's end state (or the application's base URL without one) — do not set a path on a test that has a RESUME_FROM dependency, as it would navigate away from the dependency's end state.
Full replacement list of labels.
POSITIVE (expected to succeed) or NEGATIVE (expected to fail).
POSITIVE, NEGATIVE Move the test into an existing scenario (folder). Pass null to remove it from its current scenario.
^scenario(-.+_.+|_.+)$Test case (UUID) whose output state this test resumes from — the preferred way to give a test fresh, valid data instead of hardcoded entities. Pass null to remove the RESUME_FROM dependency. Combine with startUrlPath: null so the test actually starts from the dependency's end state.
Full replacement list of test cases (UUIDs) that must finish before this one runs (WAIT_FOR — ordering only). Pass an empty array to remove all WAIT_FOR dependencies. Must not overlap with the RESUME_FROM dependency.
Target a specific project by its prefixed short ID (proj-slug_shortId or proj_shortId), as returned by the projects API. Required for organization-scoped API keys; project-scoped keys may only pass their own project's short ID.
^proj(-.+_.+|_.+)$Response
The request has succeeded.
A test case's authored configuration — what the agent is instructed to do — as distinct from a run's result (see get_run_test_case).
Project test case ID (UUID). Works with update_test_case, start_run_with_test_cases (testCaseIds), and rerun_run (projectTestCaseIds).
POSITIVE (expected to succeed) or NEGATIVE (expected to fail).
POSITIVE, NEGATIVE ^app(-.+_.+|_.+)$Scenario (folder grouping related test cases) the test belongs to. null when ungrouped.
^scenario(-.+_.+|_.+)$The test's goal — what the agent tries to achieve.
The expected result / success criteria the evaluator checks against.
Authored step instructions, in order. Empty when the test only has a goal.
URL path the agent navigates to before executing (e.g. /dashboard). null means the test starts from its RESUME_FROM dependency's end state, or the application's base URL when it has no dependency.
Test case whose output state this test resumes from (RESUME_FROM). null when the test starts fresh.
Test cases that must finish before this one runs (WAIT_FOR — ordering only, no state carry-over).
Deep link to edit the test case in the QA.tech UI.