Workflow verification incomplete
This receipt shows the requests we made, what the app reported back, and which checks passed or failed. It covers what ran in this sandbox session against the rules we set.
Failing
Each check was set up before the run. This shows what we tried, what came back, and which rule it was checked against.
This receipt covers the checks in this run only. Passing all checks does not certify the whole app as production-ready.
Test scenarios
A request starts one recorded run (provider-independent, so every later check is measured)
baselineWhat we probed
A request starts one recorded run (provider-independent, so every later check is measured)
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocations
Expected vs actual
- Expected
- A request starts one recorded run (provider-independent, so every later check is measured)
- Actual
- expected exactly 1, found 1; stable under 2 repeats (1)
Requests and responses
01GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs
This request had no body.
Server returned
HTTP 200
{
"runs": []
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
02POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-baseline",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline"
}
}Server returned
HTTP 200
{
"runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-baseline"
},
"attempts": 1,
"ref": "17Z3CP4VGS.COTMD8",
"appliedAt": "2026-10-22T20:27:47.145Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "df243906fa02d11efbc108ba10dc31696822c7cb782e262cd526b444f447a39a"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:46.890Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:46.892Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:46.912Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:47.145Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:47.147Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:46.890Z",
"updatedAt": "2026-10-22T20:27:47.147Z",
"duplicate": false
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "577",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-baseline",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
03GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-baseline"
},
"attempts": 1,
"ref": "17Z3CP4VGS.COTMD8",
"appliedAt": "2026-10-22T20:27:47.145Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "df243906fa02d11efbc108ba10dc31696822c7cb782e262cd526b444f447a39a"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:46.890Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:46.892Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:46.912Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:47.145Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:47.147Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:46.890Z",
"updatedAt": "2026-10-22T20:27:47.147Z"
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
04POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-baseline",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline"
}
}Server returned
HTTP 200
{
"runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline"
},
"duplicateStarts": 1,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-baseline"
},
"attempts": 1,
"ref": "17Z3CP4VGS.COTMD8",
"appliedAt": "2026-10-22T20:27:47.145Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 5,
"head": "caad81d86a70f99d56f3df25a22c0e7f627a4c309c1314a4b190b73d4ed3b355"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:46.890Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:46.892Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:46.912Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:47.145Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:47.147Z",
"msg": "done (ok)"
},
{
"at": "2026-10-22T20:27:47.768Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-22T20:27:46.890Z",
"updatedAt": "2026-10-22T20:27:47.768Z",
"duplicate": true
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "577",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-baseline",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
05GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline"
},
"duplicateStarts": 1,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-baseline"
},
"attempts": 1,
"ref": "17Z3CP4VGS.COTMD8",
"appliedAt": "2026-10-22T20:27:47.145Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 5,
"head": "caad81d86a70f99d56f3df25a22c0e7f627a4c309c1314a4b190b73d4ed3b355"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:46.890Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:46.892Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:46.912Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:47.145Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:47.147Z",
"msg": "done (ok)"
},
{
"at": "2026-10-22T20:27:47.768Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-22T20:27:46.890Z",
"updatedAt": "2026-10-22T20:27:47.768Z"
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Evidence
- Run
vr_a1f6960b9f7947978738aa94c733d7ba- App version (declared)
acme-ops-purchase-request-to…- Source receipt
- Source receipt ↗
Technical reference
baselineApp version (declared): acme-ops-purchase-request-to-po-1.0.0-06c2f09
A request starts one recorded run (provider-independent, so every later check is measured)
expected exactly 1, found 1; stable under 2 repeats (1)
- Verification covers the declared HTTP actions and state reads in this run.
- The app version shown was supplied by the app itself, not independently checked.
- Passing all checks in this run does not certify the whole app as production-ready.
- The verifier session does not survive a restart. This says nothing about the durability of the app under test.
- App state shown here is what the app's own endpoint reported. It is not independently checked against the database.
Provider traffic in the same time window (1)
These calls were recorded during the same request window as this check but are not directly linked to it. Timing alone is not proof that they caused or were caused by this check.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-baseline ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0PROCURE01",
"message": {
"bot_id": "bot_f4ed6761be7341d88a55228221",
"client_msg_id": "cli_4dbf76f248564024889a5035ce",
"name": "item-880e3e",
"old_name": "Sample Old",
"parent_user_id": "par_537514376e1444af8544f31498",
"permalink": "my-resource",
"reply_count": 0,
"reply_users_count": 0,
"text": "Sample text content",
"ts": "sample-value",
"type": "default",
"unread_count": 0,
"username": "acme-corp"
},
"ok": true,
"ts": "17Z3CP4VGS.COTMD8"
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "201",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-baseline ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
A purchase request is announced to procurement with its approval chain
baseline_effectsWhat we probed
A purchase request is announced to procurement with its approval chain
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocations
Expected vs actual
- Expected
- A purchase request is announced to procurement with its approval chain
- Actual
- expected exactly 1, found 0; stable under 2 repeats (0)
Requests and responses
01GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs
This request had no body.
Server returned
HTTP 200
{
"runs": []
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
02POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-baseline",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline_effects"
}
}Server returned
HTTP 200
{
"runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline_effects"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-baseline"
},
"attempts": 1,
"ref": "178EI6G998.6AHBD4",
"appliedAt": "2026-10-22T20:27:48.768Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "7fed765a5238550f4deb9405f79aecdd0d1e68a1bc08697aed1ba7c6a925fe90"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:48.611Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:48.612Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:48.614Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:48.769Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:48.770Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:48.611Z",
"updatedAt": "2026-10-22T20:27:48.771Z",
"duplicate": false
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "593",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-baseline",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline_effects"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
03GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline_effects"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-baseline"
},
"attempts": 1,
"ref": "178EI6G998.6AHBD4",
"appliedAt": "2026-10-22T20:27:48.768Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "7fed765a5238550f4deb9405f79aecdd0d1e68a1bc08697aed1ba7c6a925fe90"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:48.611Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:48.612Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:48.614Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:48.769Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:48.770Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:48.611Z",
"updatedAt": "2026-10-22T20:27:48.771Z"
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
04POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-baseline",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline_effects"
}
}Server returned
HTTP 200
{
"runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline_effects"
},
"duplicateStarts": 1,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-baseline"
},
"attempts": 1,
"ref": "178EI6G998.6AHBD4",
"appliedAt": "2026-10-22T20:27:48.768Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 5,
"head": "2f11a4ded47e289f1f7d2ac674041fe8628f94186b9929a1ba5b2c8691e593cf"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:48.611Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:48.612Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:48.614Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:48.769Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:48.770Z",
"msg": "done (ok)"
},
{
"at": "2026-10-22T20:27:49.332Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-22T20:27:48.611Z",
"updatedAt": "2026-10-22T20:27:49.332Z",
"duplicate": true
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "593",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-baseline",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline_effects"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
05GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "baseline_effects"
},
"duplicateStarts": 1,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-baseline"
},
"attempts": 1,
"ref": "178EI6G998.6AHBD4",
"appliedAt": "2026-10-22T20:27:48.768Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 5,
"head": "2f11a4ded47e289f1f7d2ac674041fe8628f94186b9929a1ba5b2c8691e593cf"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:48.611Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:48.612Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:48.614Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:48.769Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:48.770Z",
"msg": "done (ok)"
},
{
"at": "2026-10-22T20:27:49.332Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-22T20:27:48.611Z",
"updatedAt": "2026-10-22T20:27:49.332Z"
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Evidence
- Run
vr_a1f6960b9f7947978738aa94c733d7ba- App version (declared)
acme-ops-purchase-request-to…- Source receipt
- Source receipt ↗
Technical reference
baseline_effectsApp version (declared): acme-ops-purchase-request-to-po-1.0.0-06c2f09
A purchase request is announced to procurement with its approval chain
expected exactly 1, found 0; stable under 2 repeats (0)
- Verification covers the declared HTTP actions and state reads in this run.
- The app version shown was supplied by the app itself, not independently checked.
- Passing all checks in this run does not certify the whole app as production-ready.
- The verifier session does not survive a restart. This says nothing about the durability of the app under test.
- App state shown here is what the app's own endpoint reported. It is not independently checked against the database.
Provider traffic in the same time window (1)
These calls were recorded during the same request window as this check but are not directly linked to it. Timing alone is not proof that they caused or were caused by this check.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-baseline ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0PROCURE01",
"message": {
"bot_id": "bot_5836f4628d344f4faa298cc037",
"client_msg_id": "cli_3dff5dd692cc4f7dad102e09b6",
"name": "item-1e98db",
"old_name": "Sample Old",
"parent_user_id": "par_87754f32294e4aa8ab9d770922",
"permalink": "my-resource",
"reply_count": 0,
"reply_users_count": 0,
"text": "Sample text content",
"ts": "sample-value",
"type": "default",
"unread_count": 0,
"username": "acme-corp"
},
"ok": true,
"ts": "178EI6G998.6AHBD4"
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "201",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-baseline ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Vendor status, committed spend, duplicates and sanctions are read before any approval
vendor_and_budget_readWhat we probed
Vendor status, committed spend, duplicates and sanctions are read before any approval
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocations
Expected vs actual
- Expected
- Vendor status, committed spend, duplicates and sanctions are read before any approval
- Actual
- expected exactly 1, found 0; stable under 2 repeats (0)
Requests and responses
01GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs
This request had no body.
Server returned
HTTP 200
{
"runs": []
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
02POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-vendor-and-budget-read",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "vendor_and_budget_read"
}
}Server returned
HTTP 200
{
"runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "vendor_and_budget_read"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-vendor-and-budget-read"
},
"attempts": 1,
"ref": "17MRCICSM9.LT8U8F",
"appliedAt": "2026-10-22T20:27:50.269Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "cacc9a8ff5e4da95d0f0643036d2a5612676aca12752ee4f8238d696398db182"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:50.111Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:50.112Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:50.115Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:50.269Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:50.271Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:50.111Z",
"updatedAt": "2026-10-22T20:27:50.272Z",
"duplicate": false
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "619",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-vendor-and-budget-read",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "vendor_and_budget_read"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
03GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "vendor_and_budget_read"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-vendor-and-budget-read"
},
"attempts": 1,
"ref": "17MRCICSM9.LT8U8F",
"appliedAt": "2026-10-22T20:27:50.269Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "cacc9a8ff5e4da95d0f0643036d2a5612676aca12752ee4f8238d696398db182"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:50.111Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:50.112Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:50.115Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:50.269Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:50.271Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:50.111Z",
"updatedAt": "2026-10-22T20:27:50.272Z"
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
04POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-vendor-and-budget-read",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "vendor_and_budget_read"
}
}Server returned
HTTP 200
{
"runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "vendor_and_budget_read"
},
"duplicateStarts": 1,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-vendor-and-budget-read"
},
"attempts": 1,
"ref": "17MRCICSM9.LT8U8F",
"appliedAt": "2026-10-22T20:27:50.269Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 5,
"head": "c20b2c7b21d209fdf7ebe2618eac13ea9d74c975007a6d4b04da05942388cc64"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:50.111Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:50.112Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:50.115Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:50.269Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:50.271Z",
"msg": "done (ok)"
},
{
"at": "2026-10-22T20:27:50.836Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-22T20:27:50.111Z",
"updatedAt": "2026-10-22T20:27:50.836Z",
"duplicate": true
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "619",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-vendor-and-budget-read",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "vendor_and_budget_read"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
05GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "vendor_and_budget_read"
},
"duplicateStarts": 1,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-vendor-and-budget-read"
},
"attempts": 1,
"ref": "17MRCICSM9.LT8U8F",
"appliedAt": "2026-10-22T20:27:50.269Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 5,
"head": "c20b2c7b21d209fdf7ebe2618eac13ea9d74c975007a6d4b04da05942388cc64"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:50.111Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:50.112Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:50.115Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:50.269Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:50.271Z",
"msg": "done (ok)"
},
{
"at": "2026-10-22T20:27:50.836Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-22T20:27:50.111Z",
"updatedAt": "2026-10-22T20:27:50.836Z"
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Evidence
- Run
vr_a1f6960b9f7947978738aa94c733d7ba- App version (declared)
acme-ops-purchase-request-to…- Source receipt
- Source receipt ↗
Technical reference
vendor_and_budget_readApp version (declared): acme-ops-purchase-request-to-po-1.0.0-06c2f09
Vendor status, committed spend, duplicates and sanctions are read before any approval
expected exactly 1, found 0; stable under 2 repeats (0)
- Verification covers the declared HTTP actions and state reads in this run.
- The app version shown was supplied by the app itself, not independently checked.
- Passing all checks in this run does not certify the whole app as production-ready.
- The verifier session does not survive a restart. This says nothing about the durability of the app under test.
- App state shown here is what the app's own endpoint reported. It is not independently checked against the database.
Provider traffic in the same time window (1)
These calls were recorded during the same request window as this check but are not directly linked to it. Timing alone is not proof that they caused or were caused by this check.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-vendor-and-budget-read ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0PROCURE01",
"message": {
"bot_id": "bot_33c284269a984b77ae7c60d67c",
"client_msg_id": "cli_2128fec4e20b46c2a22f328621",
"name": "item-7f7312",
"old_name": "Sample Old",
"parent_user_id": "par_77477a621db549c5a6c0d405b5",
"permalink": "my-resource",
"reply_count": 0,
"reply_users_count": 0,
"text": "Sample text content",
"ts": "sample-value",
"type": "default",
"unread_count": 0,
"username": "acme-corp"
},
"ok": true,
"ts": "17MRCICSM9.LT8U8F"
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "215",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-vendor-and-budget-read ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
A 12,000 request needs the manager, then finance
chain_by_amountWhat we probed
A 12,000 request needs the manager, then finance
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocations
Expected vs actual
- Expected
- A 12,000 request needs the manager, then finance
- Actual
- required observation 'output.approvalPath' is missing
Requests and responses
01GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/chain_by_amount/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/chain_by_amount/runs
This request had no body.
Server returned
HTTP 200
{
"runs": []
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/chain_by_amount/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/chain_by_amount/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
02POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "chain-by-amount-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-chain-by-amount",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "chain_by_amount"
}
}Server returned
HTTP 200
{
"runId": "chain-by-amount-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "chain_by_amount"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-chain-by-amount"
},
"attempts": 1,
"ref": "17Z4TTB4UR.7CMF3U",
"appliedAt": "2026-10-22T20:27:51.751Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "166272f54f3ed929c0b396b5f1f5952a1cb590946650f494f8d22c1404766c07"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:51.584Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:51.585Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:51.587Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:51.752Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:51.754Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:51.584Z",
"updatedAt": "2026-10-22T20:27:51.754Z",
"duplicate": false
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "598",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "chain-by-amount-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-chain-by-amount",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "chain_by_amount"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
03GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/chain_by_amount/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/chain_by_amount/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "chain-by-amount-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "chain_by_amount"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-chain-by-amount"
},
"attempts": 1,
"ref": "17Z4TTB4UR.7CMF3U",
"appliedAt": "2026-10-22T20:27:51.751Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "166272f54f3ed929c0b396b5f1f5952a1cb590946650f494f8d22c1404766c07"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:51.584Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:51.585Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:51.587Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:51.752Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:51.754Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:51.584Z",
"updatedAt": "2026-10-22T20:27:51.754Z"
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/chain_by_amount/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/chain_by_amount/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Evidence
- Run
vr_a1f6960b9f7947978738aa94c733d7ba- App version (declared)
acme-ops-purchase-request-to…- Source receipt
- Source receipt ↗
Technical reference
chain_by_amountApp version (declared): acme-ops-purchase-request-to-po-1.0.0-06c2f09
A 12,000 request needs the manager, then finance
required observation 'output.approvalPath' is missing
- Verification covers the declared HTTP actions and state reads in this run.
- The app version shown was supplied by the app itself, not independently checked.
- Passing all checks in this run does not certify the whole app as production-ready.
- The verifier session does not survive a restart. This says nothing about the durability of the app under test.
- App state shown here is what the app's own endpoint reported. It is not independently checked against the database.
Provider traffic in the same time window (1)
These calls were recorded during the same request window as this check but are not directly linked to it. Timing alone is not proof that they caused or were caused by this check.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-chain-by-amount ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0PROCURE01",
"message": {
"bot_id": "bot_ea411ec7735b47b78a0f4adc6c",
"client_msg_id": "cli_3e773a05c2f6410fbc946ae432",
"name": "item-7b9c60",
"old_name": "Sample Old",
"parent_user_id": "par_0013158a7d094f899f3fcd0db6",
"permalink": "my-resource",
"reply_count": 0,
"reply_users_count": 0,
"text": "Sample text content",
"ts": "sample-value",
"type": "default",
"unread_count": 0,
"username": "acme-corp"
},
"ok": true,
"ts": "17Z4TTB4UR.7CMF3U"
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "208",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-chain-by-amount ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
The requester can't approve their own request
requester_cannot_approveWhat we probed
The requester can't approve their own request
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocationsPOST /invocations
Expected vs actual
- Expected
- The requester can't approve their own request
- Actual
- app action expected HTTP 403, received 404
Requests and responses
01GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/requester_cannot_approve/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/requester_cannot_approve/runs
This request had no body.
Server returned
HTTP 200
{
"runs": []
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/requester_cannot_approve/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/requester_cannot_approve/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
02POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "requester-cannot-approve-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-requester-cannot-approve",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "requester_cannot_approve"
}
}Server returned
HTTP 200
{
"runId": "requester-cannot-approve-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "requester_cannot_approve"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-requester-cannot-approve"
},
"attempts": 1,
"ref": "1747O45XEH.EMTYM9",
"appliedAt": "2026-10-22T20:27:52.689Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "20b3715b35eed324bc0ac1ae9fa07e168b30878104c8f42ee8af7df83cca6fdf"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:52.533Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:52.534Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:52.537Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:52.689Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:52.692Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:52.533Z",
"updatedAt": "2026-10-22T20:27:52.692Z",
"duplicate": false
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "625",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "requester-cannot-approve-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-requester-cannot-approve",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "requester_cannot_approve"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
03POST /invocations404
We sent
POST /invocations
{
"action": "signal",
"runId": "requester-cannot-approve-vr_a1f6960b9f7947978738aa94c733d7ba",
"actionId": "approve.manager:PR-requester-cannot-approve",
"value": "approve",
"userId": "U_REQ"
}Server returned
HTTP 404
{
"result": "no_such_signal",
"runId": "requester-cannot-approve-vr_a1f6960b9f7947978738aa94c733d7ba",
"actionId": "approve.manager:PR-requester-cannot-approve"
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "182",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "signal",
"runId": "requester-cannot-approve-vr_a1f6960b9f7947978738aa94c733d7ba",
"actionId": "approve.manager:PR-requester-cannot-approve",
"value": "approve",
"userId": "U_REQ"
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Evidence
- Run
vr_a1f6960b9f7947978738aa94c733d7ba- App version (declared)
acme-ops-purchase-request-to…- Source receipt
- Source receipt ↗
Technical reference
requester_cannot_approveApp version (declared): acme-ops-purchase-request-to-po-1.0.0-06c2f09
The requester can't approve their own request
app action expected HTTP 403, received 404
- Verification covers the declared HTTP actions and state reads in this run.
- The app version shown was supplied by the app itself, not independently checked.
- Passing all checks in this run does not certify the whole app as production-ready.
- The verifier session does not survive a restart. This says nothing about the durability of the app under test.
- App state shown here is what the app's own endpoint reported. It is not independently checked against the database.
Provider traffic in the same time window (1)
These calls were recorded during the same request window as this check but are not directly linked to it. Timing alone is not proof that they caused or were caused by this check.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-requester-cannot-approve ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0PROCURE01",
"message": {
"bot_id": "bot_75cdfaf4dd7845b18fc9b62ace",
"client_msg_id": "cli_696dcb6ba16b43918ed15efc8e",
"name": "item-4dedba",
"old_name": "Sample Old",
"parent_user_id": "par_76447c4f0d0645cb80f6d8ff3e",
"permalink": "my-resource",
"reply_count": 0,
"reply_users_count": 0,
"text": "Sample text content",
"ts": "sample-value",
"type": "default",
"unread_count": 0,
"username": "acme-corp"
},
"ok": true,
"ts": "1747O45XEH.EMTYM9"
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "217",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-requester-cannot-approve ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Someone who approved as manager can't also approve as finance
no_repeat_approverWhat we probed
Someone who approved as manager can't also approve as finance
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocationsPOST /invocationsPOST /invocations
Expected vs actual
- Expected
- Someone who approved as manager can't also approve as finance
- Actual
- app action expected HTTP 200, received 404
Requests and responses
01GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/no_repeat_approver/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/no_repeat_approver/runs
This request had no body.
Server returned
HTTP 200
{
"runs": []
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/no_repeat_approver/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/no_repeat_approver/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
02POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "no-repeat-approver-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-no-repeat-approver",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "no_repeat_approver"
}
}Server returned
HTTP 200
{
"runId": "no-repeat-approver-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "no_repeat_approver"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-no-repeat-approver"
},
"attempts": 1,
"ref": "17KWJSV65N.G3AUQ6",
"appliedAt": "2026-10-22T20:27:53.513Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "c99f6990393ed392b2c2460ef02e09e481175ead2c2126b92167983cdee0bb91"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:53.380Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:53.381Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:53.384Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:53.513Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:53.516Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:53.380Z",
"updatedAt": "2026-10-22T20:27:53.516Z",
"duplicate": false
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "607",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "no-repeat-approver-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-no-repeat-approver",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "no_repeat_approver"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
03POST /invocations404
We sent
POST /invocations
{
"action": "signal",
"runId": "no-repeat-approver-vr_a1f6960b9f7947978738aa94c733d7ba",
"actionId": "approve.manager:PR-no-repeat-approver",
"value": "approve",
"userId": "U_MGR"
}Server returned
HTTP 404
{
"result": "no_such_signal",
"runId": "no-repeat-approver-vr_a1f6960b9f7947978738aa94c733d7ba",
"actionId": "approve.manager:PR-no-repeat-approver"
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "170",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "signal",
"runId": "no-repeat-approver-vr_a1f6960b9f7947978738aa94c733d7ba",
"actionId": "approve.manager:PR-no-repeat-approver",
"value": "approve",
"userId": "U_MGR"
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Evidence
- Run
vr_a1f6960b9f7947978738aa94c733d7ba- App version (declared)
acme-ops-purchase-request-to…- Source receipt
- Source receipt ↗
Technical reference
no_repeat_approverApp version (declared): acme-ops-purchase-request-to-po-1.0.0-06c2f09
Someone who approved as manager can't also approve as finance
app action expected HTTP 200, received 404
- Verification covers the declared HTTP actions and state reads in this run.
- The app version shown was supplied by the app itself, not independently checked.
- Passing all checks in this run does not certify the whole app as production-ready.
- The verifier session does not survive a restart. This says nothing about the durability of the app under test.
- App state shown here is what the app's own endpoint reported. It is not independently checked against the database.
Provider traffic in the same time window (1)
These calls were recorded during the same request window as this check but are not directly linked to it. Timing alone is not proof that they caused or were caused by this check.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-no-repeat-approver ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0PROCURE01",
"message": {
"bot_id": "bot_7129f01c4e6d40afbf18ca9e7b",
"client_msg_id": "cli_a378f88da7bd430b9c65d697b1",
"name": "item-d49441",
"old_name": "Sample Old",
"parent_user_id": "par_f2df80cb8bc341809c4c02f3ae",
"permalink": "my-resource",
"reply_count": 0,
"reply_users_count": 0,
"text": "Sample text content",
"ts": "sample-value",
"type": "default",
"unread_count": 0,
"username": "acme-corp"
},
"ok": true,
"ts": "17KWJSV65N.G3AUQ6"
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "211",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-no-repeat-approver ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
After the full chain approves, one purchase order is raised in the ERP
approved_po_raised_onceWhat we probed
After the full chain approves, one purchase order is raised in the ERP
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocationsPOST /invocationsPOST /invocations
Expected vs actual
- Expected
- After the full chain approves, one purchase order is raised in the ERP
- Actual
- app action expected HTTP 200, received 404
Requests and responses
01GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/approved_po_raised_once/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/approved_po_raised_once/runs
This request had no body.
Server returned
HTTP 200
{
"runs": []
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/approved_po_raised_once/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/approved_po_raised_once/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
02POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "approved-po-raised-once-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-approved-po-raised-once",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "approved_po_raised_once"
}
}Server returned
HTTP 200
{
"runId": "approved-po-raised-once-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "approved_po_raised_once"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-approved-po-raised-once"
},
"attempts": 1,
"ref": "17BO8C6YTV.BUBP94",
"appliedAt": "2026-10-22T20:27:56.283Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "50b8a8e23877747093630662b9accf371db21b3dc63bbbf29a638c0cef72a824"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:54.143Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:54.146Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:54.148Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:56.283Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:56.285Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:54.143Z",
"updatedAt": "2026-10-22T20:27:56.285Z",
"duplicate": false
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "622",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "approved-po-raised-once-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-approved-po-raised-once",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "approved_po_raised_once"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
03POST /invocations404
We sent
POST /invocations
{
"action": "signal",
"runId": "approved-po-raised-once-vr_a1f6960b9f7947978738aa94c733d7ba",
"actionId": "approve.manager:PR-approved-po-raised-once",
"value": "approve",
"userId": "U_MGR"
}Server returned
HTTP 404
{
"result": "no_such_signal",
"runId": "approved-po-raised-once-vr_a1f6960b9f7947978738aa94c733d7ba",
"actionId": "approve.manager:PR-approved-po-raised-once"
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "180",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "signal",
"runId": "approved-po-raised-once-vr_a1f6960b9f7947978738aa94c733d7ba",
"actionId": "approve.manager:PR-approved-po-raised-once",
"value": "approve",
"userId": "U_MGR"
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Evidence
- Run
vr_a1f6960b9f7947978738aa94c733d7ba- App version (declared)
acme-ops-purchase-request-to…- Source receipt
- Source receipt ↗
Technical reference
approved_po_raised_onceApp version (declared): acme-ops-purchase-request-to-po-1.0.0-06c2f09
After the full chain approves, one purchase order is raised in the ERP
app action expected HTTP 200, received 404
- Verification covers the declared HTTP actions and state reads in this run.
- The app version shown was supplied by the app itself, not independently checked.
- Passing all checks in this run does not certify the whole app as production-ready.
- The verifier session does not survive a restart. This says nothing about the durability of the app under test.
- App state shown here is what the app's own endpoint reported. It is not independently checked against the database.
Provider traffic in the same time window (1)
These calls were recorded during the same request window as this check but are not directly linked to it. Timing alone is not proof that they caused or were caused by this check.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-approved-po-raised-once ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0PROCURE01",
"message": {
"bot_id": "bot_3c24ca0fd12247019f913a234c",
"client_msg_id": "cli_56b9b9b6652f4d02a0103b9938",
"name": "item-8517ee",
"old_name": "Sample Old",
"parent_user_id": "par_e48455d8a7be4d0e97102d26de",
"permalink": "my-resource",
"reply_count": 0,
"reply_users_count": 0,
"text": "Sample text content",
"ts": "sample-value",
"type": "default",
"unread_count": 0,
"username": "acme-corp"
},
"ok": true,
"ts": "17BO8C6YTV.BUBP94"
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "216",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-approved-po-raised-once ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
An approval unanswered for 7 days lapses and no PO is raised (needs clock control)
slow_approval_lapsesWhat we probed
An approval unanswered for 7 days lapses and no PO is raised (needs clock control)
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocationsPOST /invocations
Expected vs actual
- Expected
- An approval unanswered for 7 days lapses and no PO is raised (needs clock control)
- Actual
- expected exactly 1, found 0; stable under 2 repeats (0)
Requests and responses
01GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs
This request had no body.
Server returned
HTTP 200
{
"runs": []
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
02POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-slow-approval-lapses",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "slow_approval_lapses"
}
}Server returned
HTTP 200
{
"runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "slow_approval_lapses"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-slow-approval-lapses"
},
"attempts": 1,
"ref": "17DOZSTQOC.MQG90S",
"appliedAt": "2026-10-22T20:27:57.058Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "d3d7b03a72917eac73be1ce1dd49e1d3dbfafa21ed28e794f8fe589409c56058"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:56.926Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:56.927Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:56.929Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:57.058Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:57.060Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:56.926Z",
"updatedAt": "2026-10-22T20:27:57.060Z",
"duplicate": false
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "613",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-slow-approval-lapses",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "slow_approval_lapses"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
03POST /invocations200
We sent
POST /invocations
{
"action": "tick"
}Server returned
HTTP 200
{
"woken": []
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "17",
"content-type": "application/json"
}{
"content-type": "application/json",
"content-length": "12"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "tick"
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
04GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "slow_approval_lapses"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-slow-approval-lapses"
},
"attempts": 1,
"ref": "17DOZSTQOC.MQG90S",
"appliedAt": "2026-10-22T20:27:57.058Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "d3d7b03a72917eac73be1ce1dd49e1d3dbfafa21ed28e794f8fe589409c56058"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:56.926Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:56.927Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:56.929Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:57.058Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:57.060Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:56.926Z",
"updatedAt": "2026-10-22T20:27:57.060Z"
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
05POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-slow-approval-lapses",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "slow_approval_lapses"
}
}Server returned
HTTP 200
{
"runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "slow_approval_lapses"
},
"duplicateStarts": 1,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-slow-approval-lapses"
},
"attempts": 1,
"ref": "17DOZSTQOC.MQG90S",
"appliedAt": "2026-10-22T20:27:57.058Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 5,
"head": "bf2a55c34d1700388ea1aae2bff0472667840216b6e87bb09fa0c880c5384211"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:56.926Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:56.927Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:56.929Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:57.058Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:57.060Z",
"msg": "done (ok)"
},
{
"at": "2026-10-22T20:27:57.799Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-22T20:27:56.926Z",
"updatedAt": "2026-10-22T20:27:57.799Z",
"duplicate": true
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "613",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-slow-approval-lapses",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "slow_approval_lapses"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
06POST /invocations200
We sent
POST /invocations
{
"action": "tick"
}Server returned
HTTP 200
{
"woken": []
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "17",
"content-type": "application/json"
}{
"content-type": "application/json",
"content-length": "12"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "tick"
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
07GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "slow_approval_lapses"
},
"duplicateStarts": 1,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-slow-approval-lapses"
},
"attempts": 1,
"ref": "17DOZSTQOC.MQG90S",
"appliedAt": "2026-10-22T20:27:57.058Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 5,
"head": "bf2a55c34d1700388ea1aae2bff0472667840216b6e87bb09fa0c880c5384211"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:56.926Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:56.927Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:56.929Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:57.058Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:57.060Z",
"msg": "done (ok)"
},
{
"at": "2026-10-22T20:27:57.799Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-22T20:27:56.926Z",
"updatedAt": "2026-10-22T20:27:57.799Z"
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Evidence
- Run
vr_a1f6960b9f7947978738aa94c733d7ba- App version (declared)
acme-ops-purchase-request-to…- Source receipt
- Source receipt ↗
Technical reference
slow_approval_lapsesApp version (declared): acme-ops-purchase-request-to-po-1.0.0-06c2f09
An approval unanswered for 7 days lapses and no PO is raised (needs clock control)
expected exactly 1, found 0; stable under 2 repeats (0)
- Verification covers the declared HTTP actions and state reads in this run.
- The app version shown was supplied by the app itself, not independently checked.
- Passing all checks in this run does not certify the whole app as production-ready.
- The verifier session does not survive a restart. This says nothing about the durability of the app under test.
- App state shown here is what the app's own endpoint reported. It is not independently checked against the database.
Provider traffic in the same time window (1)
These calls were recorded during the same request window as this check but are not directly linked to it. Timing alone is not proof that they caused or were caused by this check.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-slow-approval-lapses ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0PROCURE01",
"message": {
"bot_id": "bot_82eb19fcc208453089ae2551b5",
"client_msg_id": "cli_fbb4f10c8f5146c98503b32d8f",
"name": "item-0e594f",
"old_name": "Sample Old",
"parent_user_id": "par_476cac6fffea4d248e58ea52cc",
"permalink": "my-resource",
"reply_count": 0,
"reply_users_count": 0,
"text": "Sample text content",
"ts": "sample-value",
"type": "default",
"unread_count": 0,
"username": "acme-corp"
},
"ok": true,
"ts": "17DOZSTQOC.MQG90S"
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "213",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-slow-approval-lapses ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
When the ERP can't be read nothing is approved and procurement is told
erp_unavailable_stopsWhat we probed
When the ERP can't be read nothing is approved and procurement is told
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocations
Expected vs actual
- Expected
- When the ERP can't be read nothing is approved and procurement is told
- Actual
- expected exactly 1, found 0; stable under 2 repeats (0)
Requests and responses
01GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs
This request had no body.
Server returned
HTTP 200
{
"runs": []
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
02POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-erp-unavailable-stops",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "erp_unavailable_stops"
}
}Server returned
HTTP 200
{
"runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "erp_unavailable_stops"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-erp-unavailable-stops"
},
"attempts": 1,
"ref": "17JJR6EJHD.R206N0",
"appliedAt": "2026-10-22T20:27:58.927Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "81ff999df2cfe8dfdd2c11e1b06839097f4edabd73f7639cc910c2ab5785680b"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:58.770Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:58.771Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:58.779Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:58.927Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:58.929Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:58.770Z",
"updatedAt": "2026-10-22T20:27:58.930Z",
"duplicate": false
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "616",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-erp-unavailable-stops",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "erp_unavailable_stops"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
03GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "erp_unavailable_stops"
},
"duplicateStarts": 0,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-erp-unavailable-stops"
},
"attempts": 1,
"ref": "17JJR6EJHD.R206N0",
"appliedAt": "2026-10-22T20:27:58.927Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 4,
"head": "81ff999df2cfe8dfdd2c11e1b06839097f4edabd73f7639cc910c2ab5785680b"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:58.770Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:58.771Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:58.779Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:58.927Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:58.929Z",
"msg": "done (ok)"
}
],
"createdAt": "2026-10-22T20:27:58.770Z",
"updatedAt": "2026-10-22T20:27:58.930Z"
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
04POST /invocations200
We sent
POST /invocations
{
"action": "start",
"runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-erp-unavailable-stops",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "erp_unavailable_stops"
}
}Server returned
HTTP 200
{
"runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "erp_unavailable_stops"
},
"duplicateStarts": 1,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-erp-unavailable-stops"
},
"attempts": 1,
"ref": "17JJR6EJHD.R206N0",
"appliedAt": "2026-10-22T20:27:58.927Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 5,
"head": "c04dc28670ae3d56983f03e2cc7e599989069a0098d5956461d57fc728f3c18e"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:58.770Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:58.771Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:58.779Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:58.927Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:58.929Z",
"msg": "done (ok)"
},
{
"at": "2026-10-22T20:27:59.494Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-22T20:27:58.770Z",
"updatedAt": "2026-10-22T20:27:59.494Z",
"duplicate": true
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "616",
"content-type": "application/json"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-erp-unavailable-stops",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": 1200000,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "erp_unavailable_stops"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
05GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs
This request had no body.
Server returned
HTTP 200
{
"runs": [
{
"runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba",
"workflow": "purchase-request-to-po",
"metadata": {
"organization": "Acme",
"company": "Acme Corporation",
"environment": "unconfigured",
"owner": "unassigned",
"department": "unassigned",
"ownerTeam": "unassigned",
"oncall": "unassigned",
"version": "unversioned",
"sourceCommit": "unrecorded"
},
"org": "Finance",
"team": "procurement",
"phase": "DONE",
"closed": true,
"outcome": "ok",
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "erp_unavailable_stops"
},
"duplicateStarts": 1,
"agents": [
{
"name": "vendor",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "budget",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "duplicates",
"status": "skipped",
"error": "not configured: netsuite",
"errorCode": "not_configured",
"durationMs": 0
},
{
"name": "screening",
"status": "skipped",
"error": "not configured: netsuite, screening",
"errorCode": "not_configured",
"durationMs": 0
}
],
"actions": [
{
"id": "slack.post_stopped",
"kind": "slack.post_stopped",
"provider": "slack",
"agent": "vendor",
"gate": "auto",
"status": "applied",
"summary": {
"requestId": "PR-erp-unavailable-stops"
},
"attempts": 1,
"ref": "17JJR6EJHD.R206N0",
"appliedAt": "2026-10-22T20:27:58.927Z",
"reconciled": null
}
],
"counts": {
"applied": 1,
"failed": 0,
"pendingApproval": 0,
"skipped": 0,
"rejected": 0,
"scheduled": 0,
"awaitingSignal": 0,
"compensated": 0
},
"wakeAt": null,
"audit": {
"seq": 5,
"head": "c04dc28670ae3d56983f03e2cc7e599989069a0098d5956461d57fc728f3c18e"
},
"output": {
"mode": "stopped"
},
"events": [
{
"at": "2026-10-22T20:27:58.770Z",
"msg": "started by U_FETCHSANDBOX"
},
{
"at": "2026-10-22T20:27:58.771Z",
"msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped"
},
{
"at": "2026-10-22T20:27:58.779Z",
"msg": "planned 1 action(s): 0 need approval"
},
{
"at": "2026-10-22T20:27:58.927Z",
"msg": "slack.post_stopped: applied"
},
{
"at": "2026-10-22T20:27:58.929Z",
"msg": "done (ok)"
},
{
"at": "2026-10-22T20:27:59.494Z",
"msg": "duplicate start ignored"
}
],
"createdAt": "2026-10-22T20:27:58.770Z",
"updatedAt": "2026-10-22T20:27:59.494Z"
}
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Evidence
- Run
vr_a1f6960b9f7947978738aa94c733d7ba- App version (declared)
acme-ops-purchase-request-to…- Source receipt
- Source receipt ↗
Technical reference
erp_unavailable_stopsApp version (declared): acme-ops-purchase-request-to-po-1.0.0-06c2f09
When the ERP can't be read nothing is approved and procurement is told
expected exactly 1, found 0; stable under 2 repeats (0)
- Verification covers the declared HTTP actions and state reads in this run.
- The app version shown was supplied by the app itself, not independently checked.
- Passing all checks in this run does not certify the whole app as production-ready.
- The verifier session does not survive a restart. This says nothing about the durability of the app under test.
- App state shown here is what the app's own endpoint reported. It is not independently checked against the database.
Provider traffic in the same time window (1)
These calls were recorded during the same request window as this check but are not directly linked to it. Timing alone is not proof that they caused or were caused by this check.
slack · POST /api/chat.postMessage · HTTP 200
We sent
POST /api/chat.postMessage
{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-erp-unavailable-stops ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}Server returned
HTTP 200
{
"channel": "C0PROCURE01",
"message": {
"bot_id": "bot_497c28abf3ee41ba8cd8aece73",
"client_msg_id": "cli_c129343b55a847d793a8f7ff40",
"name": "item-0b6566",
"old_name": "Sample Old",
"parent_user_id": "par_7ccd745c776d4250a6921fade7",
"permalink": "my-resource",
"reply_count": 0,
"reply_users_count": 0,
"text": "Sample text content",
"ts": "sample-value",
"type": "default",
"unread_count": 0,
"username": "acme-corp"
},
"ok": true,
"ts": "17JJR6EJHD.R206N0"
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage
{
"host": "fetchsandbox.com",
"content-length": "214",
"user-agent": "node",
"accept": "application/json",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"content-type": "application/json; charset=utf-8"
}Response headers were not saved in this run.
Rebuilt curl
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \
--header 'host: fetchsandbox.com' \
--header 'user-agent: node' \
--header 'accept: application/json' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'content-type: application/json; charset=utf-8' \
--data-raw '{
"channel": "C0PROCURE01",
"text": ":no_entry: PR-erp-unavailable-stops ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.",
"unfurl_links": false,
"unfurl_media": false
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
A negative amount is rejected before any agent runs
invalid_input_rejectedWhat we probed
A negative amount is rejected before any agent runs
How we probed it
Frozen intended probe steps. Recorded requests show what actually ran.
POST /invocations
Expected vs actual
- Expected
- A negative amount is rejected before any agent runs
- Actual
- expected exactly 0, found 0; stable under 2 repeats (0)
Requests and responses
01GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs
This request had no body.
Server returned
HTTP 200
{
"runs": []
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
02POST /invocations400
We sent
POST /invocations
{
"action": "start",
"runId": "invalid-input-rejected-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-baseline",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": -5,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "invalid_input_rejected"
}
}Server returned
HTTP 400
{
"error": "invalid input",
"issues": [
"amount: Too small: expected number to be >0"
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "600",
"content-type": "application/json"
}{
"content-type": "application/json",
"content-length": "82"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "invalid-input-rejected-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-baseline",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": -5,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "invalid_input_rejected"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
03GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs
This request had no body.
Server returned
HTTP 200
{
"runs": []
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
04POST /invocations400
We sent
POST /invocations
{
"action": "start",
"runId": "invalid-input-rejected-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-baseline",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": -5,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "invalid_input_rejected"
}
}Server returned
HTTP 400
{
"error": "invalid input",
"issues": [
"amount: Too small: expected number to be >0"
]
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]",
"content-length": "600",
"content-type": "application/json"
}{
"content-type": "application/json",
"content-length": "82"
}Rebuilt curl
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \
--header 'accept: */*' \
--header 'user-agent: python-httpx/0.28.1' \
--header 'host: fetchsandbox.com' \
--header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \
--header 'x-fetchsandbox-relay: [redacted]' \
--header 'authorization: [redacted]' \
--header 'content-type: application/json' \
--data-raw '{
"action": "start",
"runId": "invalid-input-rejected-vr_a1f6960b9f7947978738aa94c733d7ba",
"input": {
"requestId": "PR-baseline",
"requester": "U_REQ",
"vendorId": "301",
"description": "Load-testing service, 12 months",
"amount": -5,
"currency": "usd",
"department": {
"id": "7",
"name": "Engineering",
"annualBudget": 10000000
},
"expenseAccount": "6100",
"approvers": {
"manager": [
"U_MGR",
"U_REQ"
],
"finance": [
"U_FIN",
"U_MGR"
],
"vp": [
"U_VP"
],
"cfo": [
"U_CFO"
]
},
"procurementChannel": "C0PROCURE01"
},
"requestedBy": {
"userId": "U_FETCHSANDBOX"
},
"labels": {
"fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba",
"fs_case": "invalid_input_rejected"
}
}'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
05GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs200
We sent
GET /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs
This request had no body.
Server returned
HTTP 200
{
"runs": []
}HTTP status is a response, not the scenario verdict. State shown here is reported by the app.
Technical details
Headers and timing
https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs
{
"accept": "*/*",
"user-agent": "python-httpx/0.28.1",
"host": "fetchsandbox.com",
"x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba",
"x-fetchsandbox-relay": "[redacted]",
"authorization": "[redacted]"
}{
"content-type": "application/json",
"content-length": "11"
}Rebuilt curl
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Evidence
- Run
vr_a1f6960b9f7947978738aa94c733d7ba- App version (declared)
acme-ops-purchase-request-to…- Source receipt
- Source receipt ↗
Technical reference
invalid_input_rejectedApp version (declared): acme-ops-purchase-request-to-po-1.0.0-06c2f09
A negative amount is rejected before any agent runs
expected exactly 0, found 0; stable under 2 repeats (0)
- Verification covers the declared HTTP actions and state reads in this run.
- The app version shown was supplied by the app itself, not independently checked.
- Passing all checks in this run does not certify the whole app as production-ready.
- The verifier session does not survive a restart. This says nothing about the durability of the app under test.
- App state shown here is what the app's own endpoint reported. It is not independently checked against the database.
Run details
Run vr_a1f6960b9f7947978738aa94c733d7ba
10 required checks for the declared application workflow. Results apply to the recorded observation windows.
2 passed · 4 failed · 4 not checked
Coverage beyond the declared checks
Passing these checks does not establish every production behavior.
- Normal successful behavior · Linked check failed · baseline, baseline_effects
- The right user gets the right access · Not checked · requester_cannot_approve, no_repeat_approver
- Valid data and boundary values · Linked checks passed · invalid_input_rejected
- Correct amount, currency and quantity · Not checked · chain_by_amount
- Duplicate requests and events · Proposed as not applicable
- Requests arriving together · Proposed as not applicable
- Out-of-order and stale events · Not checked · no_repeat_approver
- Delayed or missing events · Linked check failed · slow_approval_lapses
- Provider authentication and permissions · Linked check failed · erp_unavailable_stops
- Rate limits, server failures and timeouts · Linked check failed · erp_unavailable_stops
- Completed action with a lost response · Proposed as not applicable
- Partial completion and recovery · Not checked · approved_po_raised_once
- Restart without losing or duplicating work · Proposed as not applicable
- Finding and repairing inconsistent state · Proposed as not applicable
- Cancellation, refunds and access · Proposed as not applicable
- Data ownership and privacy · Proposed as not applicable
- Test isolation and cleanup · Linked checks passed · baseline
Applicability comes from the proposed plan. Test results come from the recorded execution.
App version: acme-ops-purchase-request-to-po-1.0.0-06c2f09 (declared)
Measured run: 2026-10-22T20:27:46.463898+00:00 – 2026-10-22T20:28:01.689082+00:00
Recorded execution
Recorded application requests and state reads for the declared HTTP contract.
The timeline below merges all requests from this run, sorted by recorded timestamp.
Recorded requests and deliveries: 48/53 successful · checkpoints: 6/10 recorded
Why checks are unmeasured
- chain_by_amount: required observation 'output.approvalPath' is missing
- requester_cannot_approve: app action expected HTTP 403, received 404
- no_repeat_approver: app action expected HTTP 200, received 404
- approved_po_raised_once: app action expected HTTP 200, received 404
Sanitized request and event timeline (53 events)
- · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs · baseline · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:46.787137+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json", "content-length": "11" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [] } - · POST app request /invocations · baseline · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-baseline", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:47.266090+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "577", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-baseline", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline" } }Recorded response · HTTP 200
{ "runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-baseline" }, "attempts": 1, "ref": "17Z3CP4VGS.COTMD8", "appliedAt": "2026-10-22T20:27:47.145Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "df243906fa02d11efbc108ba10dc31696822c7cb782e262cd526b444f447a39a" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:46.890Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:46.892Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:46.912Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:47.145Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:47.147Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:46.890Z", "updatedAt": "2026-10-22T20:27:47.147Z", "duplicate": false } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request 225b44f4feb5 · processing 11.62ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0PROCURE01", "text": ":no_entry: PR-baseline ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL resolved from the saved run route. Provider processing: 11.62ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "201", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0PROCURE01", "text": ":no_entry: PR-baseline ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0PROCURE01", "message": { "bot_id": "bot_f4ed6761be7341d88a55228221", "client_msg_id": "cli_4dbf76f248564024889a5035ce", "name": "item-880e3e", "old_name": "Sample Old", "parent_user_id": "par_537514376e1444af8544f31498", "permalink": "my-resource", "reply_count": 0, "reply_users_count": 0, "text": "Sample text content", "ts": "sample-value", "type": "default", "unread_count": 0, "username": "acme-corp" }, "ok": true, "ts": "17Z3CP4VGS.COTMD8" } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs · baseline · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:47.657468+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [ { "runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-baseline" }, "attempts": 1, "ref": "17Z3CP4VGS.COTMD8", "appliedAt": "2026-10-22T20:27:47.145Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "df243906fa02d11efbc108ba10dc31696822c7cb782e262cd526b444f447a39a" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:46.890Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:46.892Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:46.912Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:47.145Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:47.147Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:46.890Z", "updatedAt": "2026-10-22T20:27:47.147Z" } ] } - · POST app request /invocations · baseline · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-baseline", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:47.883175+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "577", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-baseline", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline" } }Recorded response · HTTP 200
{ "runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline" }, "duplicateStarts": 1, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-baseline" }, "attempts": 1, "ref": "17Z3CP4VGS.COTMD8", "appliedAt": "2026-10-22T20:27:47.145Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 5, "head": "caad81d86a70f99d56f3df25a22c0e7f627a4c309c1314a4b190b73d4ed3b355" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:46.890Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:46.892Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:46.912Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:47.145Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:47.147Z", "msg": "done (ok)" }, { "at": "2026-10-22T20:27:47.768Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-22T20:27:46.890Z", "updatedAt": "2026-10-22T20:27:47.768Z", "duplicate": true } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs · baseline · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:48.224091+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [ { "runId": "baseline-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline" }, "duplicateStarts": 1, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-baseline" }, "attempts": 1, "ref": "17Z3CP4VGS.COTMD8", "appliedAt": "2026-10-22T20:27:47.145Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 5, "head": "caad81d86a70f99d56f3df25a22c0e7f627a4c309c1314a4b190b73d4ed3b355" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:46.890Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:46.892Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:46.912Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:47.145Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:47.147Z", "msg": "done (ok)" }, { "at": "2026-10-22T20:27:47.768Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-22T20:27:46.890Z", "updatedAt": "2026-10-22T20:27:47.768Z" } ] } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs · baseline effects · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:48.496687+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json", "content-length": "11" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [] } - · POST app request /invocations · baseline effects · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-baseline", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline_effects" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:48.883233+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "593", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-baseline", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline_effects" } }Recorded response · HTTP 200
{ "runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline_effects" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-baseline" }, "attempts": 1, "ref": "178EI6G998.6AHBD4", "appliedAt": "2026-10-22T20:27:48.768Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "7fed765a5238550f4deb9405f79aecdd0d1e68a1bc08697aed1ba7c6a925fe90" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:48.611Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:48.612Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:48.614Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:48.769Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:48.770Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:48.611Z", "updatedAt": "2026-10-22T20:27:48.771Z", "duplicate": false } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request b4098c7026de · processing 14.22ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0PROCURE01", "text": ":no_entry: PR-baseline ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL resolved from the saved run route. Provider processing: 14.22ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "201", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0PROCURE01", "text": ":no_entry: PR-baseline ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0PROCURE01", "message": { "bot_id": "bot_5836f4628d344f4faa298cc037", "client_msg_id": "cli_3dff5dd692cc4f7dad102e09b6", "name": "item-1e98db", "old_name": "Sample Old", "parent_user_id": "par_87754f32294e4aa8ab9d770922", "permalink": "my-resource", "reply_count": 0, "reply_users_count": 0, "text": "Sample text content", "ts": "sample-value", "type": "default", "unread_count": 0, "username": "acme-corp" }, "ok": true, "ts": "178EI6G998.6AHBD4" } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs · baseline effects · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:49.211533+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [ { "runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline_effects" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-baseline" }, "attempts": 1, "ref": "178EI6G998.6AHBD4", "appliedAt": "2026-10-22T20:27:48.768Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "7fed765a5238550f4deb9405f79aecdd0d1e68a1bc08697aed1ba7c6a925fe90" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:48.611Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:48.612Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:48.614Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:48.769Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:48.770Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:48.611Z", "updatedAt": "2026-10-22T20:27:48.771Z" } ] } - · POST app request /invocations · baseline effects · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-baseline", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline_effects" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:49.441657+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "593", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-baseline", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline_effects" } }Recorded response · HTTP 200
{ "runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline_effects" }, "duplicateStarts": 1, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-baseline" }, "attempts": 1, "ref": "178EI6G998.6AHBD4", "appliedAt": "2026-10-22T20:27:48.768Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 5, "head": "2f11a4ded47e289f1f7d2ac674041fe8628f94186b9929a1ba5b2c8691e593cf" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:48.611Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:48.612Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:48.614Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:48.769Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:48.770Z", "msg": "done (ok)" }, { "at": "2026-10-22T20:27:49.332Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-22T20:27:48.611Z", "updatedAt": "2026-10-22T20:27:49.332Z", "duplicate": true } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs · baseline effects · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/baseline_effects/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:49.753444+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [ { "runId": "baseline-effects-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "baseline_effects" }, "duplicateStarts": 1, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-baseline" }, "attempts": 1, "ref": "178EI6G998.6AHBD4", "appliedAt": "2026-10-22T20:27:48.768Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 5, "head": "2f11a4ded47e289f1f7d2ac674041fe8628f94186b9929a1ba5b2c8691e593cf" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:48.611Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:48.612Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:48.614Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:48.769Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:48.770Z", "msg": "done (ok)" }, { "at": "2026-10-22T20:27:49.332Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-22T20:27:48.611Z", "updatedAt": "2026-10-22T20:27:49.332Z" } ] } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs · vendor and budget read · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:50.007885+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json", "content-length": "11" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [] } - · POST app request /invocations · vendor and budget read · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-vendor-and-budget-read", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "vendor_and_budget_read" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:50.383707+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "619", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-vendor-and-budget-read", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "vendor_and_budget_read" } }Recorded response · HTTP 200
{ "runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "vendor_and_budget_read" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-vendor-and-budget-read" }, "attempts": 1, "ref": "17MRCICSM9.LT8U8F", "appliedAt": "2026-10-22T20:27:50.269Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "cacc9a8ff5e4da95d0f0643036d2a5612676aca12752ee4f8238d696398db182" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:50.111Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:50.112Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:50.115Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:50.269Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:50.271Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:50.111Z", "updatedAt": "2026-10-22T20:27:50.272Z", "duplicate": false } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request 34b85976e716 · processing 13.98ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0PROCURE01", "text": ":no_entry: PR-vendor-and-budget-read ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL resolved from the saved run route. Provider processing: 13.98ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "215", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0PROCURE01", "text": ":no_entry: PR-vendor-and-budget-read ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0PROCURE01", "message": { "bot_id": "bot_33c284269a984b77ae7c60d67c", "client_msg_id": "cli_2128fec4e20b46c2a22f328621", "name": "item-7f7312", "old_name": "Sample Old", "parent_user_id": "par_77477a621db549c5a6c0d405b5", "permalink": "my-resource", "reply_count": 0, "reply_users_count": 0, "text": "Sample text content", "ts": "sample-value", "type": "default", "unread_count": 0, "username": "acme-corp" }, "ok": true, "ts": "17MRCICSM9.LT8U8F" } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs · vendor and budget read · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:50.743435+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [ { "runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "vendor_and_budget_read" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-vendor-and-budget-read" }, "attempts": 1, "ref": "17MRCICSM9.LT8U8F", "appliedAt": "2026-10-22T20:27:50.269Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "cacc9a8ff5e4da95d0f0643036d2a5612676aca12752ee4f8238d696398db182" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:50.111Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:50.112Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:50.115Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:50.269Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:50.271Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:50.111Z", "updatedAt": "2026-10-22T20:27:50.272Z" } ] } - · POST app request /invocations · vendor and budget read · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-vendor-and-budget-read", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "vendor_and_budget_read" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:50.951732+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "619", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-vendor-and-budget-read", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "vendor_and_budget_read" } }Recorded response · HTTP 200
{ "runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "vendor_and_budget_read" }, "duplicateStarts": 1, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-vendor-and-budget-read" }, "attempts": 1, "ref": "17MRCICSM9.LT8U8F", "appliedAt": "2026-10-22T20:27:50.269Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 5, "head": "c20b2c7b21d209fdf7ebe2618eac13ea9d74c975007a6d4b04da05942388cc64" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:50.111Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:50.112Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:50.115Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:50.269Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:50.271Z", "msg": "done (ok)" }, { "at": "2026-10-22T20:27:50.836Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-22T20:27:50.111Z", "updatedAt": "2026-10-22T20:27:50.836Z", "duplicate": true } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs · vendor and budget read · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/vendor_and_budget_read/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:51.273207+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [ { "runId": "vendor-and-budget-read-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "vendor_and_budget_read" }, "duplicateStarts": 1, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-vendor-and-budget-read" }, "attempts": 1, "ref": "17MRCICSM9.LT8U8F", "appliedAt": "2026-10-22T20:27:50.269Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 5, "head": "c20b2c7b21d209fdf7ebe2618eac13ea9d74c975007a6d4b04da05942388cc64" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:50.111Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:50.112Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:50.115Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:50.269Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:50.271Z", "msg": "done (ok)" }, { "at": "2026-10-22T20:27:50.836Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-22T20:27:50.111Z", "updatedAt": "2026-10-22T20:27:50.836Z" } ] } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/chain_by_amount/runs · chain by amount · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/chain_by_amount/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:51.472719+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json", "content-length": "11" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [] } - · POST app request /invocations · chain by amount · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "chain-by-amount-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-chain-by-amount", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "chain_by_amount" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:51.856562+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "598", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "chain-by-amount-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-chain-by-amount", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "chain_by_amount" } }Recorded response · HTTP 200
{ "runId": "chain-by-amount-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "chain_by_amount" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-chain-by-amount" }, "attempts": 1, "ref": "17Z4TTB4UR.7CMF3U", "appliedAt": "2026-10-22T20:27:51.751Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "166272f54f3ed929c0b396b5f1f5952a1cb590946650f494f8d22c1404766c07" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:51.584Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:51.585Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:51.587Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:51.752Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:51.754Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:51.584Z", "updatedAt": "2026-10-22T20:27:51.754Z", "duplicate": false } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request 2bbefa4c8257 · processing 14.14ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0PROCURE01", "text": ":no_entry: PR-chain-by-amount ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL resolved from the saved run route. Provider processing: 14.14ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "208", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0PROCURE01", "text": ":no_entry: PR-chain-by-amount ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0PROCURE01", "message": { "bot_id": "bot_ea411ec7735b47b78a0f4adc6c", "client_msg_id": "cli_3e773a05c2f6410fbc946ae432", "name": "item-7b9c60", "old_name": "Sample Old", "parent_user_id": "par_0013158a7d094f899f3fcd0db6", "permalink": "my-resource", "reply_count": 0, "reply_users_count": 0, "text": "Sample text content", "ts": "sample-value", "type": "default", "unread_count": 0, "username": "acme-corp" }, "ok": true, "ts": "17Z4TTB4UR.7CMF3U" } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/chain_by_amount/runs · chain by amount · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/chain_by_amount/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:52.198294+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [ { "runId": "chain-by-amount-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "chain_by_amount" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-chain-by-amount" }, "attempts": 1, "ref": "17Z4TTB4UR.7CMF3U", "appliedAt": "2026-10-22T20:27:51.751Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "166272f54f3ed929c0b396b5f1f5952a1cb590946650f494f8d22c1404766c07" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:51.584Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:51.585Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:51.587Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:51.752Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:51.754Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:51.584Z", "updatedAt": "2026-10-22T20:27:51.754Z" } ] } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/requester_cannot_approve/runs · requester cannot approve · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/requester_cannot_approve/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:52.438870+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json", "content-length": "11" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [] } - · POST app request /invocations · requester cannot approve · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "requester-cannot-approve-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-requester-cannot-approve", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "requester_cannot_approve" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:52.809100+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "625", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "requester-cannot-approve-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-requester-cannot-approve", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "requester_cannot_approve" } }Recorded response · HTTP 200
{ "runId": "requester-cannot-approve-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "requester_cannot_approve" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-requester-cannot-approve" }, "attempts": 1, "ref": "1747O45XEH.EMTYM9", "appliedAt": "2026-10-22T20:27:52.689Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "20b3715b35eed324bc0ac1ae9fa07e168b30878104c8f42ee8af7df83cca6fdf" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:52.533Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:52.534Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:52.537Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:52.689Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:52.692Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:52.533Z", "updatedAt": "2026-10-22T20:27:52.692Z", "duplicate": false } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request 4808793600bc · processing 14.04ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0PROCURE01", "text": ":no_entry: PR-requester-cannot-approve ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL resolved from the saved run route. Provider processing: 14.04ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "217", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0PROCURE01", "text": ":no_entry: PR-requester-cannot-approve ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0PROCURE01", "message": { "bot_id": "bot_75cdfaf4dd7845b18fc9b62ace", "client_msg_id": "cli_696dcb6ba16b43918ed15efc8e", "name": "item-4dedba", "old_name": "Sample Old", "parent_user_id": "par_76447c4f0d0645cb80f6d8ff3e", "permalink": "my-resource", "reply_count": 0, "reply_users_count": 0, "text": "Sample text content", "ts": "sample-value", "type": "default", "unread_count": 0, "username": "acme-corp" }, "ok": true, "ts": "1747O45XEH.EMTYM9" } - · POST app request /invocations · requester cannot approve · HTTP 404
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "signal", "runId": "requester-cannot-approve-vr_a1f6960b9f7947978738aa94c733d7ba", "actionId": "approve.manager:PR-requester-cannot-approve", "value": "approve", "userId": "U_REQ" }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:53.047900+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "182", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "signal", "runId": "requester-cannot-approve-vr_a1f6960b9f7947978738aa94c733d7ba", "actionId": "approve.manager:PR-requester-cannot-approve", "value": "approve", "userId": "U_REQ" }Recorded response · HTTP 404
{ "result": "no_such_signal", "runId": "requester-cannot-approve-vr_a1f6960b9f7947978738aa94c733d7ba", "actionId": "approve.manager:PR-requester-cannot-approve" } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/no_repeat_approver/runs · no repeat approver · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/no_repeat_approver/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:53.258450+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json", "content-length": "11" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [] } - · POST app request /invocations · no repeat approver · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "no-repeat-approver-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-no-repeat-approver", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "no_repeat_approver" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:53.627963+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "607", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "no-repeat-approver-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-no-repeat-approver", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "no_repeat_approver" } }Recorded response · HTTP 200
{ "runId": "no-repeat-approver-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "no_repeat_approver" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-no-repeat-approver" }, "attempts": 1, "ref": "17KWJSV65N.G3AUQ6", "appliedAt": "2026-10-22T20:27:53.513Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "c99f6990393ed392b2c2460ef02e09e481175ead2c2126b92167983cdee0bb91" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:53.380Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:53.381Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:53.384Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:53.513Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:53.516Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:53.380Z", "updatedAt": "2026-10-22T20:27:53.516Z", "duplicate": false } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request dc542eedd885 · processing 13.61ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0PROCURE01", "text": ":no_entry: PR-no-repeat-approver ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL resolved from the saved run route. Provider processing: 13.61ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "211", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0PROCURE01", "text": ":no_entry: PR-no-repeat-approver ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0PROCURE01", "message": { "bot_id": "bot_7129f01c4e6d40afbf18ca9e7b", "client_msg_id": "cli_a378f88da7bd430b9c65d697b1", "name": "item-d49441", "old_name": "Sample Old", "parent_user_id": "par_f2df80cb8bc341809c4c02f3ae", "permalink": "my-resource", "reply_count": 0, "reply_users_count": 0, "text": "Sample text content", "ts": "sample-value", "type": "default", "unread_count": 0, "username": "acme-corp" }, "ok": true, "ts": "17KWJSV65N.G3AUQ6" } - · POST app request /invocations · no repeat approver · HTTP 404
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "signal", "runId": "no-repeat-approver-vr_a1f6960b9f7947978738aa94c733d7ba", "actionId": "approve.manager:PR-no-repeat-approver", "value": "approve", "userId": "U_MGR" }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:53.835270+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "170", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "signal", "runId": "no-repeat-approver-vr_a1f6960b9f7947978738aa94c733d7ba", "actionId": "approve.manager:PR-no-repeat-approver", "value": "approve", "userId": "U_MGR" }Recorded response · HTTP 404
{ "result": "no_such_signal", "runId": "no-repeat-approver-vr_a1f6960b9f7947978738aa94c733d7ba", "actionId": "approve.manager:PR-no-repeat-approver" } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/approved_po_raised_once/runs · approved po raised once · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/approved_po_raised_once/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:54.051735+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json", "content-length": "11" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [] } - · POST app request /invocations · approved po raised once · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "approved-po-raised-once-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-approved-po-raised-once", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "approved_po_raised_once" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:56.390625+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "622", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "approved-po-raised-once-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-approved-po-raised-once", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "approved_po_raised_once" } }Recorded response · HTTP 200
{ "runId": "approved-po-raised-once-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "approved_po_raised_once" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-approved-po-raised-once" }, "attempts": 1, "ref": "17BO8C6YTV.BUBP94", "appliedAt": "2026-10-22T20:27:56.283Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "50b8a8e23877747093630662b9accf371db21b3dc63bbbf29a638c0cef72a824" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:54.143Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:54.146Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:54.148Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:56.283Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:56.285Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:54.143Z", "updatedAt": "2026-10-22T20:27:56.285Z", "duplicate": false } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request 98912e263d82 · processing 14.03ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0PROCURE01", "text": ":no_entry: PR-approved-po-raised-once ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL resolved from the saved run route. Provider processing: 14.03ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "216", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0PROCURE01", "text": ":no_entry: PR-approved-po-raised-once ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0PROCURE01", "message": { "bot_id": "bot_3c24ca0fd12247019f913a234c", "client_msg_id": "cli_56b9b9b6652f4d02a0103b9938", "name": "item-8517ee", "old_name": "Sample Old", "parent_user_id": "par_e48455d8a7be4d0e97102d26de", "permalink": "my-resource", "reply_count": 0, "reply_users_count": 0, "text": "Sample text content", "ts": "sample-value", "type": "default", "unread_count": 0, "username": "acme-corp" }, "ok": true, "ts": "17BO8C6YTV.BUBP94" } - · POST app request /invocations · approved po raised once · HTTP 404
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "signal", "runId": "approved-po-raised-once-vr_a1f6960b9f7947978738aa94c733d7ba", "actionId": "approve.manager:PR-approved-po-raised-once", "value": "approve", "userId": "U_MGR" }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:56.613893+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "180", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "signal", "runId": "approved-po-raised-once-vr_a1f6960b9f7947978738aa94c733d7ba", "actionId": "approve.manager:PR-approved-po-raised-once", "value": "approve", "userId": "U_MGR" }Recorded response · HTTP 404
{ "result": "no_such_signal", "runId": "approved-po-raised-once-vr_a1f6960b9f7947978738aa94c733d7ba", "actionId": "approve.manager:PR-approved-po-raised-once" } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs · slow approval lapses · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:56.816775+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json", "content-length": "11" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [] } - · POST app request /invocations · slow approval lapses · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-slow-approval-lapses", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "slow_approval_lapses" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:57.169194+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "613", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-slow-approval-lapses", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "slow_approval_lapses" } }Recorded response · HTTP 200
{ "runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "slow_approval_lapses" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-slow-approval-lapses" }, "attempts": 1, "ref": "17DOZSTQOC.MQG90S", "appliedAt": "2026-10-22T20:27:57.058Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "d3d7b03a72917eac73be1ce1dd49e1d3dbfafa21ed28e794f8fe589409c56058" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:56.926Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:56.927Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:56.929Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:57.058Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:57.060Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:56.926Z", "updatedAt": "2026-10-22T20:27:57.060Z", "duplicate": false } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request 15aed39e747f · processing 14.21ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0PROCURE01", "text": ":no_entry: PR-slow-approval-lapses ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL resolved from the saved run route. Provider processing: 14.21ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "213", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0PROCURE01", "text": ":no_entry: PR-slow-approval-lapses ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0PROCURE01", "message": { "bot_id": "bot_82eb19fcc208453089ae2551b5", "client_msg_id": "cli_fbb4f10c8f5146c98503b32d8f", "name": "item-0e594f", "old_name": "Sample Old", "parent_user_id": "par_476cac6fffea4d248e58ea52cc", "permalink": "my-resource", "reply_count": 0, "reply_users_count": 0, "text": "Sample text content", "ts": "sample-value", "type": "default", "unread_count": 0, "username": "acme-corp" }, "ok": true, "ts": "17DOZSTQOC.MQG90S" } - · POST app request /invocations · slow approval lapses · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "tick" }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:57.384071+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "17", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json", "content-length": "12" }Request body
{ "action": "tick" }Recorded response · HTTP 200
{ "woken": [] } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs · slow approval lapses · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:57.700733+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [ { "runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "slow_approval_lapses" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-slow-approval-lapses" }, "attempts": 1, "ref": "17DOZSTQOC.MQG90S", "appliedAt": "2026-10-22T20:27:57.058Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "d3d7b03a72917eac73be1ce1dd49e1d3dbfafa21ed28e794f8fe589409c56058" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:56.926Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:56.927Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:56.929Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:57.058Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:57.060Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:56.926Z", "updatedAt": "2026-10-22T20:27:57.060Z" } ] } - · POST app request /invocations · slow approval lapses · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-slow-approval-lapses", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "slow_approval_lapses" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:57.908610+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "613", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-slow-approval-lapses", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "slow_approval_lapses" } }Recorded response · HTTP 200
{ "runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "slow_approval_lapses" }, "duplicateStarts": 1, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-slow-approval-lapses" }, "attempts": 1, "ref": "17DOZSTQOC.MQG90S", "appliedAt": "2026-10-22T20:27:57.058Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 5, "head": "bf2a55c34d1700388ea1aae2bff0472667840216b6e87bb09fa0c880c5384211" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:56.926Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:56.927Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:56.929Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:57.058Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:57.060Z", "msg": "done (ok)" }, { "at": "2026-10-22T20:27:57.799Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-22T20:27:56.926Z", "updatedAt": "2026-10-22T20:27:57.799Z", "duplicate": true } - · POST app request /invocations · slow approval lapses · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "tick" }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:58.117252+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "17", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json", "content-length": "12" }Request body
{ "action": "tick" }Recorded response · HTTP 200
{ "woken": [] } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs · slow approval lapses · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/slow_approval_lapses/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:58.416099+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [ { "runId": "slow-approval-lapses-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "slow_approval_lapses" }, "duplicateStarts": 1, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-slow-approval-lapses" }, "attempts": 1, "ref": "17DOZSTQOC.MQG90S", "appliedAt": "2026-10-22T20:27:57.058Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 5, "head": "bf2a55c34d1700388ea1aae2bff0472667840216b6e87bb09fa0c880c5384211" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:56.926Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:56.927Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:56.929Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:57.058Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:57.060Z", "msg": "done (ok)" }, { "at": "2026-10-22T20:27:57.799Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-22T20:27:56.926Z", "updatedAt": "2026-10-22T20:27:57.799Z" } ] } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs · erp unavailable stops · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:58.633407+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json", "content-length": "11" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [] } - · POST app request /invocations · erp unavailable stops · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-erp-unavailable-stops", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "erp_unavailable_stops" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:59.039823+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "616", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-erp-unavailable-stops", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "erp_unavailable_stops" } }Recorded response · HTTP 200
{ "runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "erp_unavailable_stops" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-erp-unavailable-stops" }, "attempts": 1, "ref": "17JJR6EJHD.R206N0", "appliedAt": "2026-10-22T20:27:58.927Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "81ff999df2cfe8dfdd2c11e1b06839097f4edabd73f7639cc910c2ab5785680b" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:58.770Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:58.771Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:58.779Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:58.927Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:58.929Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:58.770Z", "updatedAt": "2026-10-22T20:27:58.930Z", "duplicate": false } - · POST slack request · provider traffic · /api/chat.postMessage · HTTP 200 · request ee75eebb7c5c · processing 13.9ms
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/sandbox/f872e53438/api/chat.postMessage' \ --header 'host: fetchsandbox.com' \ --header 'user-agent: node' \ --header 'accept: application/json' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'content-type: application/json; charset=utf-8' \ --data-raw '{ "channel": "C0PROCURE01", "text": ":no_entry: PR-erp-unavailable-stops ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL resolved from the saved run route. Provider processing: 13.9ms.
Recorded request headers
{ "host": "fetchsandbox.com", "content-length": "214", "user-agent": "node", "accept": "application/json", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "content-type": "application/json; charset=utf-8" }Recorded response headers
Response headers were not saved in this run.
Request body
{ "channel": "C0PROCURE01", "text": ":no_entry: PR-erp-unavailable-stops ($12,000.00, vendor 301) stopped: the vendor could not be read. <@U_REQ>, procurement will follow up.", "unfurl_links": false, "unfurl_media": false }Recorded response · HTTP 200
{ "channel": "C0PROCURE01", "message": { "bot_id": "bot_497c28abf3ee41ba8cd8aece73", "client_msg_id": "cli_c129343b55a847d793a8f7ff40", "name": "item-0b6566", "old_name": "Sample Old", "parent_user_id": "par_7ccd745c776d4250a6921fade7", "permalink": "my-resource", "reply_count": 0, "reply_users_count": 0, "text": "Sample text content", "ts": "sample-value", "type": "default", "unread_count": 0, "username": "acme-corp" }, "ok": true, "ts": "17JJR6EJHD.R206N0" } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs · erp unavailable stops · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:59.371127+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [ { "runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "erp_unavailable_stops" }, "duplicateStarts": 0, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-erp-unavailable-stops" }, "attempts": 1, "ref": "17JJR6EJHD.R206N0", "appliedAt": "2026-10-22T20:27:58.927Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 4, "head": "81ff999df2cfe8dfdd2c11e1b06839097f4edabd73f7639cc910c2ab5785680b" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:58.770Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:58.771Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:58.779Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:58.927Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:58.929Z", "msg": "done (ok)" } ], "createdAt": "2026-10-22T20:27:58.770Z", "updatedAt": "2026-10-22T20:27:58.930Z" } ] } - · POST app request /invocations · erp unavailable stops · HTTP 200
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-erp-unavailable-stops", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "erp_unavailable_stops" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:59.621157+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "616", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json" }Request body
{ "action": "start", "runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-erp-unavailable-stops", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": 1200000, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "erp_unavailable_stops" } }Recorded response · HTTP 200
{ "runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "erp_unavailable_stops" }, "duplicateStarts": 1, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-erp-unavailable-stops" }, "attempts": 1, "ref": "17JJR6EJHD.R206N0", "appliedAt": "2026-10-22T20:27:58.927Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 5, "head": "c04dc28670ae3d56983f03e2cc7e599989069a0098d5956461d57fc728f3c18e" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:58.770Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:58.771Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:58.779Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:58.927Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:58.929Z", "msg": "done (ok)" }, { "at": "2026-10-22T20:27:59.494Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-22T20:27:58.770Z", "updatedAt": "2026-10-22T20:27:59.494Z", "duplicate": true } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs · erp unavailable stops · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/erp_unavailable_stops/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:27:59.928728+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [ { "runId": "erp-unavailable-stops-vr_a1f6960b9f7947978738aa94c733d7ba", "workflow": "purchase-request-to-po", "metadata": { "organization": "Acme", "company": "Acme Corporation", "environment": "unconfigured", "owner": "unassigned", "department": "unassigned", "ownerTeam": "unassigned", "oncall": "unassigned", "version": "unversioned", "sourceCommit": "unrecorded" }, "org": "Finance", "team": "procurement", "phase": "DONE", "closed": true, "outcome": "ok", "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "erp_unavailable_stops" }, "duplicateStarts": 1, "agents": [ { "name": "vendor", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "budget", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "duplicates", "status": "skipped", "error": "not configured: netsuite", "errorCode": "not_configured", "durationMs": 0 }, { "name": "screening", "status": "skipped", "error": "not configured: netsuite, screening", "errorCode": "not_configured", "durationMs": 0 } ], "actions": [ { "id": "slack.post_stopped", "kind": "slack.post_stopped", "provider": "slack", "agent": "vendor", "gate": "auto", "status": "applied", "summary": { "requestId": "PR-erp-unavailable-stops" }, "attempts": 1, "ref": "17JJR6EJHD.R206N0", "appliedAt": "2026-10-22T20:27:58.927Z", "reconciled": null } ], "counts": { "applied": 1, "failed": 0, "pendingApproval": 0, "skipped": 0, "rejected": 0, "scheduled": 0, "awaitingSignal": 0, "compensated": 0 }, "wakeAt": null, "audit": { "seq": 5, "head": "c04dc28670ae3d56983f03e2cc7e599989069a0098d5956461d57fc728f3c18e" }, "output": { "mode": "stopped" }, "events": [ { "at": "2026-10-22T20:27:58.770Z", "msg": "started by U_FETCHSANDBOX" }, { "at": "2026-10-22T20:27:58.771Z", "msg": "agents: vendor=skipped, budget=skipped, duplicates=skipped, screening=skipped" }, { "at": "2026-10-22T20:27:58.779Z", "msg": "planned 1 action(s): 0 need approval" }, { "at": "2026-10-22T20:27:58.927Z", "msg": "slack.post_stopped: applied" }, { "at": "2026-10-22T20:27:58.929Z", "msg": "done (ok)" }, { "at": "2026-10-22T20:27:59.494Z", "msg": "duplicate start ignored" } ], "createdAt": "2026-10-22T20:27:58.770Z", "updatedAt": "2026-10-22T20:27:59.494Z" } ] } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs · invalid input rejected · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:28:00.291774+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json", "content-length": "11" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [] } - · POST app request /invocations · invalid input rejected · HTTP 400
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "invalid-input-rejected-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-baseline", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": -5, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "invalid_input_rejected" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:28:00.586488+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "600", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json", "content-length": "82" }Request body
{ "action": "start", "runId": "invalid-input-rejected-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-baseline", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": -5, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "invalid_input_rejected" } }Recorded response · HTTP 400
{ "error": "invalid input", "issues": [ "amount: Too small: expected number to be >0" ] } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs · invalid input rejected · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:28:00.941466+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json", "content-length": "11" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [] } - · POST app request /invocations · invalid input rejected · HTTP 400
View sanitized request and response
Curl-style request view
curl --request POST 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/invocations' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]' \ --header 'content-type: application/json' \ --data-raw '{ "action": "start", "runId": "invalid-input-rejected-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-baseline", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": -5, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "invalid_input_rejected" } }'This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:28:01.205499+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]", "content-length": "600", "content-type": "application/json" }Recorded response headers
{ "content-type": "application/json", "content-length": "82" }Request body
{ "action": "start", "runId": "invalid-input-rejected-vr_a1f6960b9f7947978738aa94c733d7ba", "input": { "requestId": "PR-baseline", "requester": "U_REQ", "vendorId": "301", "description": "Load-testing service, 12 months", "amount": -5, "currency": "usd", "department": { "id": "7", "name": "Engineering", "annualBudget": 10000000 }, "expenseAccount": "6100", "approvers": { "manager": [ "U_MGR", "U_REQ" ], "finance": [ "U_FIN", "U_MGR" ], "vp": [ "U_VP" ], "cfo": [ "U_CFO" ] }, "procurementChannel": "C0PROCURE01" }, "requestedBy": { "userId": "U_FETCHSANDBOX" }, "labels": { "fs_run": "vr_a1f6960b9f7947978738aa94c733d7ba", "fs_case": "invalid_input_rejected" } }Recorded response · HTTP 400
{ "error": "invalid input", "issues": [ "amount: Too small: expected number to be >0" ] } - · GET app request /verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs · invalid input rejected · HTTP 200
View sanitized request and response
Curl-style request view
curl --request GET 'https://fetchsandbox.com/api/relay/b4a45b7bdcd8637d40ef20c5d48dccc500969f0c8719bea6/verify/runs/vr_a1f6960b9f7947978738aa94c733d7ba/cases/invalid_input_rejected/runs' \ --header 'accept: */*' \ --header 'user-agent: python-httpx/0.28.1' \ --header 'host: fetchsandbox.com' \ --header 'x-flow-run-id: vr_a1f6960b9f7947978738aa94c733d7ba' \ --header 'x-fetchsandbox-relay: [redacted]' \ --header 'authorization: [redacted]'
This view is reconstructed from the saved method, URL, and sanitized headers and body. Secrets are removed and the result is not exact wire bytes, so it cannot be used as a runnable authenticated replay.
Target URL recorded at execution. Response finished: 2026-10-22T20:28:01.646604+00:00.
Recorded request headers
{ "accept": "*/*", "user-agent": "python-httpx/0.28.1", "host": "fetchsandbox.com", "x-flow-run-id": "vr_a1f6960b9f7947978738aa94c733d7ba", "x-fetchsandbox-relay": "[redacted]", "authorization": "[redacted]" }Recorded response headers
{ "content-type": "application/json", "content-length": "11" }Request body
This request had no body.
Recorded response · HTTP 200
{ "runs": [] }
Expand a request to inspect its sanitized payload. Credentials and personal data stay hidden.
Timestamps reflect when the sandbox recorded each request, not the order your app triggered them.
- Verification covers the declared HTTP actions and state reads in this run.
- The app version shown was supplied by the app itself, not independently checked.
- Passing all checks in this run does not certify the whole app as production-ready.
- The verifier session does not survive a restart. This says nothing about the durability of the app under test.
- App state shown here is what the app's own endpoint reported. It is not independently checked against the database.
Sanitized summary. Expand a timeline event to inspect the safe request and response fields; sensitive provider and application data stays hidden.